需求: 用户输入一串字符串,可以统计字符串中各个字符的个数,要求使用map集合实现
package testpracticetwo;
import java.io.Serializable;
import java.util.HashMap;
import java.util.Scanner;
/**
* @Author: mcc
* @Date: 2021/7/30
* @Description: testpracticetwo
* @version: 1.0
*/
public class CharacAdd implements Serializable {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String str = input.next();//获取用户输入的字符串
HashMap<Character, Integer> map = new HashMap<>();
for (char c : str.toCharArray()) {//将字符串转换为字符数组遍历数组
if (map.containsKey(c)){//如果找到相同字符
Integer value = map.get(c);//通过键找值
value++;//将数量加1
map.put(c,value);//将其覆盖
}else{
map.put(c,1);//若是第一次出现,直接加入
}
}
/*
*遍历集合
*/
for (Character key : map.keySet()) {
Integer values = map.get(key);
System.out.println(key+":"+values);
}
}
}
测试结果