JavaEE学习日志持续更新----> 必看!JavaEE学习路线(文章总汇)
计算字符串中不同字符出现的个数
需求:
计算一个字符串中每个字符出现次数。
分析:
- 获取一个字符串对象
- 创建一个Map集合,键代表字符,值代表次数。
- 遍历字符串得到每个字符。
- 判断Map中是否有该键。
- 如果没有,第一次出现,存储次数为1;如果有,则说明已经出现过,获取到对应的值进行++,再次存储。
- 打印终结果
代码:
/*
* 计算一个字符串中每个字符出现的次数
*
* */
public class Demo01 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个字符串:");
//输入字符串
String s = sc.next();
//Map集合存储字符和出现次数
HashMap<Character, Integer> map = new HashMap<>();
for (int i = 0; i < s.length(); i++) {
//遍历字符串
char c = s.charAt(i);
//若字符存在,则出现次数+1,若不存在则将字符加入Map集合并设置出现次数为1
if(map.containsKey(c)){
Integer value = map.get(c);
map.put(c,++value);
}else{
map.put(c,1);
}
}
//遍历Map集合
Set<Map.Entry<Character, Integer>> entries = map.entrySet();
for (Map.Entry<Character, Integer> entry : entries) {
Character key = entry.getKey();
Integer value = entry.getValue();
System.out.println("字符"+key+"的出现次数为"+value);
}
}
}