题目:
键盘输入一串字符串,统计字符出现次数。
思路:
1.定义一个字符串(键盘输入)
2.定义一个Map集合
3.把字符串转换为字符数组
4.遍历字符数组得到每一个字符
5.把字符串到Map中查找,看返回值
null : 把字符作为键,1作为值存储
不是null : 把值++,重新存储该键和值
6.定义一个字符串缓冲区
7.遍历TreeMap获取每一个键值对应拼接
8.把字符串缓冲区转换为字符串输出
代码:
import java.util.Scanner;
import java.util.Set;
import java.util.TreeMap;
public class Map {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个字符串:");
String line = sc.nextLine();
TreeMap<Character,Integer> tm = new TreeMap<Character,Integer>();
char[] chs=line.toCharArray();
for(char ch : chs){
Integer i = tm.get(ch);
if(i==null) tm.put(ch, 1);
else {
i++;
tm.put(ch, i);
}
}
StringBuilder sb = new StringBuilder();
Set<Character> set = tm.keySet();
for(Character key : set){
Integer value = tm.get(key);
sb.append(key).append("=").append(value).append(" ");
}
String result = sb.toString();
System.out.println("result:"+result);
}
}