步骤:
使用Scanner获取用户输入的字符串
创建一个Map集合。key为字符,value为出现次数。
遍历字符串,获取所有字符
获取到每一个字符:判断Map中是否已经存在字符key key存在,value++并存储进Map; key不存在,存储(key,1)进Map
遍历Map,输出Map
import java.util.HashMap;
import java.util.Scanner;
public class demo7Practice {
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个字符串:");
String s = scanner.next();
//HashMap<String,Integer> map = new HashMap<>();
HashMap<Character,Integer> map = new HashMap<>();
for (char c : s.toCharArray()){
if(map.containsKey(c)){
Integer value = map.get(c);
value++;
//map.get(c)++;//会报错,俺也不知道为啥
map.put(c,value);
}
else{
map.put(c,1);
}
}
System.out.println(map);
for(Character c : map.keySet()){//或char,对结果不产生影响,因为主键不会为空,也无法计算空格
Integer value = map.get(c);
System.out.println(c+"="+value);
}
}
}
关于哈希表的使用,在于,配对映射关系