需求:键盘录入一个字符串,要求统计字符串出现的次数。
举例:键盘录入"abababbajbabs" 在控制台输出"a(5)b(4)c(3)...."
分析:
①我们可以把结果分成几个部分来看:a(5),b(4),c(3)
②每一部分可以看成是:字符和字符对应的次数组成
③这样的数据,我们可以用过HashMap集合来存储,键是字符,值是字符出现的次数
注意:键是字符,类型应该是Character; 值是字符出现的次数,类型应该是Interger
思路:
①键盘录入一个字符串
②创建HashMap集合,键是Character,值是Integer
③遍历字符串,得到每个字符
④拿到的每一个字符串作为键到HashMap集合中去找对应的值,看其返回值
如果返回值是null:说明该字符在HashMap集合中不存在,就把该字符作为键,1作为值存储
如果返回值不是null:说明该字符在HashMap集合中存在,把该值+1,然后重新存储该字符和对应的值。
⑤遍历HashMap集合,得到键和值,按照要求进行拼接
⑥输出结果
package it.com;
import java.util.HashMap;
import java.util.Scanner;
import java.util.Set;
import java.util.TreeMap;
public class HashMapDemo {
public static void