只要静下心来认真思考,是可以的
public class homework2 {
public static void main(String[] args) {
Scanner sc =new Scanner(System.in);
System.out.println("请输入您的字符串");
String str=sc.next();
//将字符串变成字符数组
char[] arr = str.toCharArray();
//遍历字符数组
//定义HashMap集合,来存入字符及对应出现的次数
HashMap<Character,Integer> hs = new HashMap<>();
for (char thisarr : arr) {
Integer num = hs.get(thisarr); //注意 此刻num为引用数据类型
if(num==null) {
hs.put(thisarr, 1);
} else {
hs.put(thisarr, num+1);
}
}
System.out.println(hs);
//将HashMap集合中的数据封装成a(2)b(1)k(2)...
//利用StringBuilder完成字符串的拼装
StringBuilder sb = new StringBuilder();
for (Map.Entry<Character,Integer> entry : hs.entrySet()) {
sb.append(entry.getKey()).append("(").append(entry.getValue()).append(")");
}
System.out.println(sb.toString());
}
}
|