分析:
1. 使用Scanner對象獲取字符串
2. 創建Map集合,key存儲字符串中的字符,value存儲字符出現的次數
3. 遍歷Map集合,獲取每一個字符
4. 判斷獲取的字符在Map集合中是否存在
key存在:通過get(key),獲取value value++,put(key,value) 把新的value值存儲到集合裏
key不存在:put(key,1)
5. 遍歷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+"次");
}
}
}