要求:
统计字符串中每个字符出现的次数
1.定义一个需要被统计字符的字符串
2.将字符串转换成字符数组
3.定义双列集合,用来存储字符串中字符以及字符出现的次数
4.遍历字符数组获取每一个字符,并将字符存储在双列集合中
存储过程中要做判断,如果集合中不包含这个键,就将该字符当做键,值为1存储,如果集合中包含这个键,就将值加1存储
5.打印双列集合获取字符出现的次数
代码:
import java.util.HashMap;
import java.util.Scanner;
public class Count_HashMap {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("please input a string:");
String str = input.nextLine();
char[] arr = str.toCharArray(); // 将字符串转换成字符数组
HashMap<Character, Integer> hm = new HashMap<>(); // 定义双列集合
for (char ch : arr) {
/* if (!hm.containsKey(ch)) {
hm.put(ch, 1);
} else {
hm.put(ch, hm.get(ch) + 1);
}*/
hm.put(ch, !hm.containsKey(ch) ? 1 : hm.get(ch) + 1); // 存储字符串中字符以及字符出现的次数
}
System.out.println("\nstatistics:");
for (char key : hm.keySet()) { // hm.keySet() ==> 取得所有键的集合
System.out.println("字符'" + key + "'出现" + hm.get(key) + "次"); // hm.get(key) ==> 根据键获取值
}
input.close();
}
}
运行结果:
获取相关代码链接请点击:https://github.com/striner/javaCode/blob/master/HashMap
喜欢就请关注哦,你们的关注是我最大的动力~