Map集合计算字符串中字符出现的次数
Posted wurengen
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Map集合计算字符串中字符出现的次数相关的知识,希望对你有一定的参考价值。
练习:
计算一个字符串中每个字符出现次数
分析:
1.使用Scanner获取用户输入的字符串
2.创建Map集合,key是字符串中的字符,value是字符的个数
3.遍历字符串,获取每一个字符
4.使用获取到的字符,去Map集合判断key是否存在
- key存在:
- 通过字符(key),获取value(字符个数)
- value++
- put(key,value)把新的value存储到Map集合中
- key不存在:
- put(key,1)
5.遍历Map集合,输出结果
代码实现
package demo03; import java.util.HashMap; import java.util.Scanner; /* 练习: 计算一个字符串中每个字符出现次数 分析: 1.使用Scanner获取用户输入的字符串 2.创建Map集合,key是字符串中的字符,value是字符的个数 3.遍历字符串,获取每一个字符 4.使用获取到的字符,去Map集合判断key是否存在 key存在: 通过字符(key),获取value(字符个数) value++ put(key,value)把新的value存储到Map集合中 key不存在: put(key,1) 5.遍历Map集合,输出结果 */ public class Demo03MapTest public static void main(String[] args) //1.使用Scanner获取用户输入的字符串 Scanner sc = new Scanner(System.in); System.out.println("请输入一个字符串:"); String str = sc.next(); //2.创建Map集合,key是字符串中的字符,value是字符的个数 HashMap<Character, Integer> map = new HashMap<>(); //3.遍历字符串,获取每一个字符 for (char c : str.toCharArray()) //4.使用获取到的字符,去Map集合判断key是否存在 if (map.containsKey(c)) //key存在 Integer value = map.get(c); value++; map.put(c, value); else //key不存在 map.put(c, 1); //5.遍历Map集合,输出结果 for (Character key : map.keySet()) Integer value = map.get(key); System.out.println(key + "=" + value);
以上是关于Map集合计算字符串中字符出现的次数的主要内容,如果未能解决你的问题,请参考以下文章
Java中Map集合排序 需要TreeMap 这个集合的构造方法中参数有比较器 面试题:输入字符串,统计ABCD出现次数,由高到低输出字母和出现次数,使用Map集合完成此题