Scala:逐行读取文件列表

mad*_*ode 2 arrays functional-programming scala

我正在逐行读取文件并放入列表中.所以,如果我的文件有10行,我有10个列表.现在,在执行此操作或执行此操作后,我想将所有列表添加到Array中.所以,我有一个列表数组,没有使用"var",所以基本上只是'val'.这是我到目前为止所拥有的:

    val fileLines = Source.fromFile(filename).getLines.toList

    for (line <- fileLines) {
    if (!line.isEmpty) 
     println((line.toList).filter(e => e != ' '))
    }
Run Code Online (Sandbox Code Playgroud)

我只是将每一行转换为一个列表并删除空白元素.如何从中生成列表数组?数组是val类型而不是尝试var.

jce*_*ern 6

你可以尝试这样的事情:

val myArray = fileLines.filterNot(_.isEmpty).map { line =>
    (line.toList).filter(e => e != ' ')
}.toArray
Run Code Online (Sandbox Code Playgroud)

这将为您提供一系列列表元素..toArray如果需要列表列表,可以在最后删除.