Я пытаюсь отфильтровать список файлов по двум условиям.И следующий код работает
import java.io.File
val d = new File("/home/loom/shp")
val dirList = d.listFiles.filter(_.isDirectory).toList
dirList.map({
_.listFiles.filter(f => f.isFile).filter(f => f.getName.endsWith("shp")).toList.map(println)
// !! Inducde an error
// _.listFiles.filter((f => f.isFile) && (f => f.getName.endsWith("shp"))).toList.map(println)
})
Однако, если я попытался объединить оба условия в одном условии фильтра (как показано в закомментированной строке), я получил следующее сообщение об ошибке:
Ошибка: (32, 27) отсутствует тип параметра _.listFiles.filter ((f => f.isFile) && (f => f.getName.endsWith ("shp"))). ToList.map(println)
Утверждает, что я пропустил тип параметра.Что я должен исправить, чтобы мой код работал?