Scala中集合的排序

Scala中集合的排序,scala,for-loop,collections,Scala,For Loop,Collections,这是我的Scala代码,它返回目录中的所有类文件名 import scala.collection.mutable._ import java.io.File def getFiles(directory:String) = { val files = ArrayBuffer[String]() val d = new File(directory) if (d.exists && d.isDirectory) { (for (i <

这是我的Scala代码,它返回目录中的所有类文件名

import scala.collection.mutable._
import java.io.File

def getFiles(directory:String) = {
    val files = ArrayBuffer[String]()
    val d = new File(directory)
    if (d.exists && d.isDirectory) {
        (for (i <- d.listFiles.filter(_.getName.endsWith(".class"))) // <--- 
            yield i.getName.replace(directory, "")).toList
    } else {
        List[String]()
    }
}
有什么想法吗?

是你要找的
.map(…)
吗?=)

从我看来,正确的做法是

是你要找的
.map(…)
吗?=)

从我看来,正确的做法是

d.listFiles.filter(_.getName.endsWith(".class")))
 .foreach(yield _.getName.replace(directory, "")).toList
d.listFiles.filter(...).map(_.getName.replace(directory, "")).toList