目的
初学Java,练习使用HashMap集合
分析
1.使用Scanner获取用户输入的字符串
2.创建Map集合:
key:字符串的字符
value:字符重复的个数
3.遍历字符串,获取每一个字符
4.使用获取到的字符,去Map集合判断是否存在
key存在:
- 使用get方法获得value
- value++
- 重写存放进map集合
key不存在:
- 存入map中value默认为1
5.遍历集合输出结果
代码
package LearnMap;
import java.util.HashMap;
import java.util.Scanner;
import java.util.Set;
public class Practise {
public static void main(String[] args) {
//获取字符串
System.out.println("请输入一串字符:");
String string = new Scanner(System.in).next();
//把字符串转化为字符串数组
char[] chars = string.toCharArray();
//创建Map集合
HashMap<Character,Integer> map = new HashMap<>();
//遍历Map集合,计算字符重复出现个数
for(Character key:chars){
if(map.containsKey(key)){ //判断key是否存在,存在则value++
Integer value = map.get(key);
value ++;
map.put(key,value);
}else{map.put(key,1);} //不存在,赋予value初始值1,存入map
}
//使用keySet遍历输出集合
Set<Character> keySet = map.keySet();
for (Character key:keySet){
Integer result = map.get(key);
System.out.println(key + " -- " + result);
}
}
}