package words
import java.io.FileWriter
object words01 {
def main(args: Array[String]): Unit = {
val content = scala.io.Source.fromFile("./test.txt").mkString
println(content)
val rst = content.split("\W+").map(ele=>ele.toLowerCase)
val map = scala.collection.mutable.Map[String,Int]()
rst.foreach(word => {
if (map.contains(word)){
map(word)+= 1
}
else {
map(word)=1
}
})
val wordLists = map.toList.sortBy(_._2).reverse
val writer = new FileWriter("result.txt")
wordLists.foreach(ele =>{
writer.write(s"${ele._1}:${ele._2} \n")
})
writer.close()
map.foreach(println)
}
}
目标:统计单词出现的次数 按降序排序 并把结果保存到文件中
- 第一步:建立一个容器 空Map
- 第二步:用Map的空contains方法判断 单词的map的键是否存在:1)存在:则将值+1 2)不存在:则将值设为1
- 第三步:foreach方法输出结果