方法1(通过TreeMap):

第一种通过TreeMap,代码如下:
package Test2;import java.util.Map;
import java.util.Set;
import java.util.TreeMap;public class Demo1 {//通过TreeMap自动排序public static void main(String[] args) {TreeMap<String, Integer> treeMap = new TreeMap<>();//创建TreeMap集合,以便通过其特性达到自动排序String str="wo ai heima wo ai java wo yao hao hao xue xi java";String[] split = str.split(" "); //通过调用字符串的split方法,让字符串通过空格进行分割,返回一个字符串数组for (String s : split) { //遍历字符串数组if (treeMap.containsKey(s)) { //判断TreeMap集合中是否有该字符Integer value = treeMap.get(s); //通过key找出集合中的valuetreeMap.put(s, value + 1); //将值的数据加1,然后添加到集合中去} else {treeMap.put(s,1); //此时集合中没有该Key,所以将该字符作为键加入到集合中}}Set<Map.Entry<String, Integer>> entries = treeMap.entrySet(); //获取集合的键值对集合for (Map.Entry<String, Integer> entry : entries) { //遍历该集合String key = entry.getKey(); //获取键值对集合的键Integer value = entry.getValue(); //获取键值对集合的值System.out.print(key+"("+value+")"); //拼接打印}}
}

第二种(通过LinkedMap配合Stream流):

代码如下:

package Test2;import java.util.LinkedHashMap;
import java.util.function.Consumer;public class Demo1_1 {public static void main(String[] args) {LinkedHashMap<String, Integer> linkedHashMap = new LinkedHashMap<>();String str="wo ai heima wo ai java wo yao hao hao xue xi java";String[] split = str.split(" ");for (String s : split) {if (linkedHashMap.containsKey(s)) {Integer value = linkedHashMap.get(s);linkedHashMap.put(s, value+1);} else {linkedHashMap.put(s, 1);}}linkedHashMap.keySet().stream().sorted().forEach(new Consumer<String>() {@Overridepublic void accept(String s) {System.out.print(s+"("+linkedHashMap.get(s)+")");}}); //通过流进行排序// linkedHashMap.forEach((key,value)-> System.out.print(key+"("+value+")"));}
}

第三种(通过HashMap配合Stream使用):

代码如下:

package Test2;import java.util.HashMap;
import java.util.function.Consumer;public class Demo1_2 {public static void main(String[] args) {HashMap<String, Integer> hashMap = new HashMap<>();String str="wo ai heima wo ai java wo yao hao hao xue xi java";String[] s = str.split(" ");for (String s1 : s) {if (hashMap.containsKey(s1)) {Integer value = hashMap.get(s1);hashMap.put(s1, value + 1);} else {hashMap.put(s1, 1);}}hashMap.keySet().stream().sorted().forEach(new Consumer<String>() {@Overridepublic void accept(String s) {System.out.print(s + "(" + hashMap.get(s) + ")");}});}
}

统计一段文本中每个单词出现的次数(以单词为键,单词出现的次数为值)相关推荐

  1. 用c语言编写代码:统计一个文本中出现次数最多的字符,写一个程序,统计一段文本中,出现次数最多的英文字母的数量,同字母大小写视为同字母 例子: wq...

    满意答案 ktbp61j 2015.11.26 采纳率:53%    等级:9 已帮助:613人 123456789101112131415161718192021# -*- coding: utf- ...

  2. 编写一个方法,将一段文本中的各个单词的字母顺序翻转题

    编写一个方法,将一段文本中的各个单词的字母顺序翻转题 1.任务介绍 编写一个方法,将一段文本中的各个单词的字母顺序翻转, 例如:"I like writing code best" ...

  3. 使用java,计算一段文本中出现英语单词次数最多的单词

    package cn.rrl.interview;import java.util.ArrayList; import java.util.Collections; import java.util. ...

  4. Python实现计算一段文本中每个单词出现的次数

    看实验楼的课程,有一个小练习,做了一下.要求用Python实现计算一段文本中每个单词出现的次数. sentence = 'hello world nihao world hey hello java ...

  5. python 词库 匹配_python从一段文本中找出存在于词库的词语

    python从一段文本中找出存在于词库的词语 有现成的库吗? 可能不是最佳答案,只是提供一个思路. 个人觉得这个问题并不需要什么库,先把词库载入,弄成列表什么的.然后再把你需要匹配的文本读入,反过来想 ...

  6. javascript实现 文本过滤 找出一段文本中的所有数字/数值 并在去重后排序

    文章目录 Intro 浏览器控制台 JavaScript API测试 从一串文本中按照某种模式提取出匹配的子字符串 String.prototype.match(regexp) 数组去重 Array- ...

  7. python怎么统计单词总数_Python【习题】:统计纯英文文本中总字数

    人生苦短,我用Python 环境:Windows 10 64-bit, python == 3.6.4 , PyCharm CE == 2018.1 声明:学习资源来自于网络,这里是自己学习笔记总结与 ...

  8. 统计一段文字中的单词个数并按单词的字母顺序排序后输出

    现需要统计若干段文字(英文)中的不同单词数量. 如果不同的单词数量不超过10个,则将所有单词输出(按字母顺序),否则输出前10个单词. 注1:单词之间以空格(1个或多个空格)为间隔. 注2:忽略空行或 ...

  9. hadoop 文本统计一个字符的个数_使用hadoop统计多个文本中每个单词数目

    程序源码 1 importjava.io.IOException;2 importjava.util.StringTokenizer;3 importorg.apache.hadoop.conf.Co ...

最新文章

  1. 马斯克受罚离任董事长,默多克之子或将成接替者!
  2. Ubuntu 配置 Android 开发 环境
  3. 什么是数据中心,它们是如何变化的?
  4. Spring注解开发-初始化/销毁方法注解
  5. linux - word frequency
  6. 《c语言从入门到精通》看书笔记——第12章 位运算
  7. Redis常见问题及其一些重点知识总结
  8. unity 烘焙参数 设置_Unity通用渲染管线(URP)系列(九)——点光源和聚光灯
  9. docker国内镜像链接
  10. SkyEye携手Simulink实现全数字协同仿真
  11. 【PAT】1001 害死人不偿命的(3n+1)猜想
  12. 垃圾回收算法_划重点 JVM G1 垃圾回收算法
  13. opencv (二十六)图像直方图匹配
  14. 新版捷兔云支付网站源码开源版 第三方支付源码 第四方支付源码 免签约支付源码
  15. 关于c++16进制字符串与ASCII字符串的相互转换
  16. regeneratorRuntime is not defined
  17. PJzhang:今天才搞清身份证、银行卡……的编码规则
  18. 英雄联盟全球总决赛历届冠军名单
  19. 摄氏度与华氏度相互转换
  20. 锐捷交换机处理环路问题

热门文章

  1. [RK3399][Android7.1] Audio中的MCLK时钟小结
  2. ORACLE ---注释,默认值,同义词
  3. 《Hadoop权威指南.大数据的存储与分析.第4版.修订版升级版》
  4. python 处理服务器响应数据包,Python如何解析RADIUS服务器数据包?
  5. 百亿美元估值的贝壳找房,值吗?
  6. Matlab中读取txt文件的几种方法
  7. PHP生成小程序带参太阳码报错解决方案(“errcode“:41030,“errmsg“:“invalid page rid: 61d3fd8b-173141e8-1360a9e5“)
  8. unity3d问题集 对Vector3.Lerp 插值的理解 - 转自蛮牛
  9. C语言经典编程题100例(41~60)
  10. 使用npm下载ElementUi文件