Я новый ученик, я хочу посчитать количество разных слов из файла.
Это отлично работает
val filePath = "C:\\Users\\76274\\Desktop\\yaml.txt"
def exercise2(file:String): HashMap[String,Int] ={
Source.fromFile(file).getLines().foldLeft(HashMap[String,Int]())(
(result,str) =>
str.split("\\W+").foldLeft(result)(
(result,word) => result + (word.toLowerCase -> (result.getOrElse(word.toLowerCase,0) + 1))))
}
И это вернет пустую карту
val filePath = "C:\\Users\\76274\\Desktop\\yaml.txt"
def exercise2(file:String): HashMap[String,Int] ={
Source.fromFile(file).getLines().foldLeft(HashMap[String,Int]()){
(result,str) => {
str.split("\\W+").foreach(word => {
result + (word.toLowerCase -> (result.getOrElse(word.toLowerCase,0) + 1))
println(result)
})}
result
}
}
Я не знаю, почему последняя не работает.Как программист Java
, я думаю, что он тоже должен работать нормально.Я надеюсь, что вы можете объяснить это, спасибо!