java键盘录入一个字符串, 请统计字符串中每个字符出现的次数?
时间: 2024-05-09 20:16:18 浏览: 178
可以使用一个 `HashMap<Character, Integer>` 来记录每个字符出现的次数,具体实现如下:
```java
import java.util.HashMap;
import java.util.Scanner;
public class CountCharacterFrequency {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入字符串:");
String input = scanner.nextLine();
HashMap<Character, Integer> map = new HashMap<>();
for (int i = 0; i < input.length(); i++) {
char c = input.charAt(i);
map.put(c, map.getOrDefault(c, 0) + 1);
}
System.out.println("每个字符出现的次数为:");
for (char c : map.keySet()) {
System.out.println(c + ": " + map.get(c));
}
}
}
```
运行结果示例:
```
请输入字符串:hello world!
每个字符出现的次数为:
r: 1
!: 1
h: 1
e: 1
o: 2
l: 3
d: 1
w: 1
: 1
```
其中,`getOrDefault()` 方法可以获取指定键对应的值,如果不存在则返回默认值。在这里,如果该字符第一次出现,就将其默认值设置为 0,并加上 1。
阅读全文