任意输入一串字符串,求该字符串中字符的出现次数并打印出来,如输入“bcaba”输出:b 2 c 1 a 2...

时间:2022-10-31 15:54:38


前言:其实我还是有点不懂,有点郁闷了,算了直接把代码放上去把。

方法一:




任意输入一串字符串,求该字符串中字符的出现次数并打印出来,如输入“bcaba”输出:b 2 c 1   a 2...

任意输入一串字符串,求该字符串中字符的出现次数并打印出来,如输入“bcaba”输出:b 2 c 1   a 2...

Scanner input=new Scanner(System.in);
System.out.println("请输入一个字符");
String str=input.next();

char[] strChar=str.toCharArray();
//声明集合,把之存在集合中
Map<Character,Integer> map=new HashMap<>();

for(int i=0;i<strChar.length;i++){
if(map.containsKey(strChar[i])){
map.put(strChar[i],map.get(strChar[i])+1);
}else{
map.put(strChar[i],1);
}
}

for(Map.Entry<Character, Integer> entry: map.entrySet()){
System.out.println(entry.getKey()+":"+entry.getValue());
}
input.close();


View Code


方法二:




任意输入一串字符串,求该字符串中字符的出现次数并打印出来,如输入“bcaba”输出:b 2 c 1   a 2...

任意输入一串字符串,求该字符串中字符的出现次数并打印出来,如输入“bcaba”输出:b 2 c 1   a 2...

1 Scanner input=new Scanner(System.in);
2 System.out.println("请输入一个字符");
3 String str=input.next();
4
5
6 //声明集合,把之存在集合中
7 Map<Character,Integer> map=new HashMap<>();
8
9 for(int i=0;i<str.length();i++){
10 if(map.containsKey(str.charAt(i))){//如果此映射将一个或多个键映射到指定值,则返回 true。
11 map.put(str.charAt(i),map.get(str.charAt(i))+1);
12 }else{
13 map.put(str.charAt(i),1);
14 }
15 }
16
17 for(Map.Entry<Character, Integer> entry: map.entrySet()){
18 System.out.println(entry.getKey()+":"+entry.getValue());
19 }
20 input.close();


View Code