【发布时间】:2015-02-01 21:34:46
【问题描述】:
我正在尝试逐行读取文件并将每行中的所有单词存储到一个列表中,然后对其执行一些计算。
我正在做以下事情:
for(line <- Source.fromFile("file1.txt").getLines())
{
var words_in_line = line.split("\\s+")
println(words_in_line)
}
但是,这会打印出类似的内容:
[Ljava.lang.String;@3535a92b
[Ljava.lang.String;@55f56157
这是什么?为什么不在列表的每一行中打印单词?
编辑:
我现在正在这样做:
val w2 = """([A-Za-z])+""".r
for(line <- Source.fromFile("/Users/Martha/Desktop/file1.txt").getLines.flatMap(w2.findAllIn))
{
println("this is")
println(line)
var w1 = line.split("\\s+")
//var w2 = w1.deep.mkString(" ")
var w3 = line.split("\\s").toList
println(w3)
}
只得到单词,没有数字或标点符号。但是,它只给了我列表中的单个单词作为输出,而不是行中的单词列表。为什么会这样?
【问题讨论】:
标签: scala collections scala-collections