import scala.io.Source object $17_WordCountLow { def main(args: Array[String]): Unit = { //1、读取文件 val datas = Source.fromFile("datas/wc2.txt","utf-8").getLines().toList //List(hello hadoop flume kafka,kafka spark scala hadoop,hello java python hadoop,kafka flume spark spark,hello flume scala java) //2、切割+压平 val words = datas.flatMap(line=> line.split(" ")) //List(hello,hadoop,flume,kafka,kafka,spark,....) //3、按照单词分组 val groupedMap = words.groupBy(x=>x) //Map( // hello-> List(hello,hello,hello,hello,..) // ... // ) // //4、统计次数 val result = groupedMap.map(x=>{ //x = hello-> List(hello,hello,hello,hello,..) (x._1,x._2.size) }) //List( (单词,总次数),(单词,总次数),... ) result.foreach(x=>println(x)) println("-"*100) // Source.fromFile("datas/wc.txt","utf-8").getLines().toList.flatMap(_.split(" ")).groupBy(x=>x).map(x=>(x._1,x._2.size)).foreach(println(_)) } }
Scala中WordCountLow
最新推荐文章于 2024-07-20 19:40:33 发布