分析:

  1. 使用Scanner对象获取字符串
  2. 创建Map集合,key存储字符串中的字符,value存储字符出现的次数
  3. 遍历Map集合,获取每一个字符
  4. 判断获取的字符在Map集合中是否存在

​ key存在:通过get(key),获取value value++,put(key,value) 把新的value值存储到集合里

​ key不存在:put(key,1)

  1. 遍历Map集合,输出结果
public class MapTest {
    public static void main(String[] args) {
        //1.使用Scanner获取用户输入的字符串
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入字符串:");
        String str = sc.nextLine();
        //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集合,输出结果
        Set<Character> set = map.keySet();
        for (char key:set){
            Integer value = map.get(key);
            System.out.println(key+":"+value+"次");
        }
    }
}
最后修改:2021 年 06 月 03 日 11 : 10 PM
如果觉得我的文章对你有用,请随意赞赏