第1关:练习-Java集合类之Map的HashMap之统计各单词出现的次数

该Java程序从标准输入读取字符串,使用HashMap统计每个单词出现的次数。程序首先导入所需类,创建CollTest类,接收字符串,然后创建HashMap。接着,程序通过StringTokenizer切割字符串,并遍历单词。如果单词已在HashMap中,则增加其计数;否则,添加到HashMap并设置计数为1。最后,程序遍历HashMap并打印所有单词及其出现次数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. // 请在Begin-End间编写代码

  2. /********** Begin **********/
  3. // 第一步:导入相关类
  4. import java.util.*;
  5. // 第二步:创建CollTest类
  6. public class CollTest {
  7. public static void main(String[] args) {
  8. // 第三步:接收给定字符串
  9. Scanner scanner = new Scanner(System.in);
  10. String next = scanner.nextLine();
  11. // 第四步:创建HashMap集合
  12. Map<String,Integer> map=new HashMap<String,Integer>();
  13. // 第五步:切割字符串
  14. StringTokenizer tokenizer=new StringTokenizer(next);
  15. int count; // 单词出现次数
  16. String word; // 单词
  17. while(tokenizer.hasMoreTokens()){
  18. word=tokenizer.nextToken(" ");
  19. //第六步: 判断集合中是否有切割后的单词,有的话获取集合中单词个数,加1之后更新集合中单词个数
  20. if(map.containsKey(word)){
  21. count=map.get(word);
  22. map.put(word, count+1);
  23. }
  24. //第七步: 判断集合中是否有切割后的单词,没有的话给单词赋值为1,添加进集合
  25. else{
  26. map.put(word, 1);
  27. }
  28. }
  29. //第八步: 遍历集合,输出所有元素
  30. Set<Map.Entry<String, Integer>> entrySet = map.entrySet();
  31. for (Map.Entry<String, Integer> entry : entrySet) {
  32. System.out.println(entry.getKey()+"-"+entry.getValue());
  33. }
  34. }
  35. }
  36. /********** End **********/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

可我不想做饼干

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值