Scala综合练习_基于以下List集合实现词频统计

简介: Scala综合练习_基于以下List集合实现词频统计

基于以下List集合实现词频统计

val list = List("hadoop spark hive ",""," hue spark hadoop hadoop","hue hive hive hive","spark hadoop hadoop")

实现词频统计,并按照单词个数降序排序,实现结果如下

hadoop-5
hive-4
spark-3
hue-2
val list = List("hadoop spark hive ",""," hue spark hadoop hadoop","hue hive hive hive","spark hadoop hadoop")
//    var m = Map[String, Int]()
//    readLine.trim.split(" ").foreach(i => if (m.contains(i)) m += (i -> (m(i) + 1)) else m += (i -> 1))
//    val sorted = m.toSeq.sortWith(_._2 > _._2)
//    sorted.foreach(println)
val unit = list.flatMap(x =>x.split(" ") //1.转化为List扁平化   1.切割
  .filter(x =>x.trim.length!=0))    //2.过滤空字符及前后空格     2.分组 
  .groupBy(x => x)            //3.一个个分组       3.排序
  .mapValues(_.size)          //4.取map的值
  .toList                 //5.转换成List
  .sortBy(-_._2)            //6.按次数排序 降序
  .foreach(x => println(x))         //7.循环输出
  println(unit.toString())```


目录
打赏
0
0
0
0
113
分享
相关文章
|
11月前
|
List集合特有功能
List集合特有功能
105 2
【Java集合类面试二十五】、有哪些线程安全的List?
线程安全的List包括Vector、Collections.SynchronizedList和CopyOnWriteArrayList,其中CopyOnWriteArrayList通过复制底层数组实现写操作,提供了最优的线程安全性能。
【Java集合类面试二十三】、List和Set有什么区别?
List和Set的主要区别在于List是一个有序且允许元素重复的集合,而Set是一个无序且元素不重复的集合。
|
11月前
|
Java学习笔记 List集合的定义、集合的遍历、迭代器的使用
Java学习笔记 List集合的定义、集合的遍历、迭代器的使用
188 4
|
8月前
|
List集合按照由小到大排序或者由大到小排序
List集合按照由小到大排序或者由大到小排序
149 0
深入Java集合框架:解密List的Fail-Fast与Fail-Safe机制
本文介绍了 Java 中 List 的遍历和删除操作,重点讨论了快速失败(fail-fast)和安全失败(fail-safe)机制。通过普通 for 循环、迭代器和 foreach 循环的对比,详细解释了各种方法的优缺点及适用场景,特别是在多线程环境下的表现。最后推荐了适合高并发场景的 fail-safe 容器,如 CopyOnWriteArrayList 和 ConcurrentHashMap。
175 5
大数据-40 Redis 类型集合 string list set sorted hash 指令列表 执行结果 附截图
大数据-40 Redis 类型集合 string list set sorted hash 指令列表 执行结果 附截图
85 3
|
10月前
|
List集合按照由小到大排序或者由大到小排序
List集合按照由小到大排序或者由大到小排序
90 3
|
11月前
|
用JAVA架建List集合为树形结构的代码方法
这段代码定义了一个表示树形结构的 `Node` 类和一个用于构建树形结构的 `TreeController`。`Node` 类包含基本属性如 `id`、`pid`、`name` 和 `type`,以及子节点列表 `children`。`TreeController` 包含初始化节点列表并将其转换为树形结构的方法。通过过滤和分组操作实现树形结构的构建。详情可见:[代码示例链接1](http://www.zidongmutanji.com/zsjx/43551.html),[代码效果参考链接2](https://www.257342.com/sitemap/post.html)。
133 5
Redis6入门到实战------ 三、常用五大数据类型(列表(List)、集合(Set)、哈希(Hash)、Zset(sorted set))
这是关于Redis 6入门到实战的文章,具体内容涉及Redis的五大数据类型:列表(List)、集合(Set)、哈希(Hash)、有序集合(Zset(sorted set))。文章详细介绍了这些数据类型的特点、常用命令以及它们背后的数据结构。如果您有任何关于Redis的具体问题或需要进一步的帮助,请随时告诉我。
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问