案例:统计字符串中每个字符出现的次数
案例:统计字符串中每个字符出现的次数
-
需求:键盘录入一个字符串,要求统计字符串中每个字符串出现的次数与
-
思路:键盘录入"ababababab" 在控制台输出:a(次数)b(次数)…
一定记住一个键最多只能对应一个值
以代码的内容为讲解
package Demo;import java.util.*;public class Demo { public static void main(String[] args) { // boolean flag = true; //建立Scanner类 Scanner s = new Scanner(System.in); //建立HashMap集合 HashMap<Character, Integer> map = new HashMap<>(); //接收,一定记住一个键最多只能对应一个值 while (flag) { System.out.println("请你输入想输入的字符串:"); if (s.hasNextLine()) { String s1 = s.nextLine(); for (int i = 0; i < s1.length(); i++) { char c = s1.charAt(i); Integer integer = map.get(c); if (integer == null) { map.put(c, 1); } else { integer++; map.put(c, integer); } } //遍历 StringBuilder sss = new StringBuilder(); Set<Character> characters = map.keySet(); for (Character c : characters) {//注意这个是键的长度 Integer integer = map.get(c);//获取值,注意值在赋予的时候做过++运算了 sss.append(c).append("(").append(integer).append(")"); } String s2 = sss.toString(); System.out.println(s2); flag = false; } else { System.out.println("你输入的有有误请您重输"); flag = true; } } }}
输出的内容
请你输入想输入的字符串:
ababababab
a(5)b(5)