package scala.ssy.Learning.Six object Test_CommmonWordCount { def main(args: Array[String]): Unit = { val stringList=List( "hello", "hello world", "hello scala", "hello spark from scala", "hello flink from scala" ) //1.对单词进行拆分 val wordList=stringList.flatMap(_.split(" ")) //println(wordList) //2.相同的单词分组 val groupMap=wordList.groupBy(word => word) //println(groupMap) //3.对分组后的list取长度,得到每个单词的个数 val countMap:Map[String,Int]=groupMap.map(kv => (kv._1,kv._2.length)) println(countMap) //HashMap(world -> 1, flink -> 1, spark -> 1, hello -> 5, scala -> 3, from -> 2) //4.对统计完的结果排序(map转化为List,排序) val sortlist:List[(String,Int)]=countMap.toList .sortWith(_._2 > _._2)//按第二个元素排序 .take(3)//取前三个 List((hello,5), (scala,3), (from,2)) println(sortlist) } }
scala学习3-普通 WordCount 案例
最新推荐文章于 2024-10-17 19:33:26 发布