SCALA 在 listFiles 上包含多个条件

SCALA contains multiple conditions on listFiles

以下有效,但我想为包含添加一个条件列表。我似乎无法影响。

val Files = dir
  .listFiles
  .filter(_.getName.contains("INIT"))
  .sorted
  .map(f => f.toString)

我想以最有效的方式检查 INIT 和 UPD 和 DEL。我尝试过的所有选项都没有产生结果。

您想检查给定子字符串列表中是否存在一个子字符串,使得文件名包含该子字符串。在代码中:

val substrings = List("INIT", "UPD", "DEL")
dir
  .listFiles
  .filter(f => { 
    val n = f.getName
    substrings.exists(n.contains)
  })
  .sorted
  .map(f => f.toString)