JAVA编写一个程序,找出一个字符串中出现次数最多的字符,并输出该字符及其出现次数。
时间: 2024-05-19 22:10:26 浏览: 144
可以使用HashMap来解决这个问题。遍历字符串中的每个字符,将字符作为键,出现次数作为值存储在HashMap中。最后再遍历HashMap,找出出现次数最多的字符及其出现次数。
下面是一个简单的Java程序示例:
```java
import java.util.HashMap;
import java.util.Map;
public class Main {
public static void main(String[] args) {
String str = "abcaabbcc";
char mostFrequentChar = findMostFrequentChar(str);
int occurrence = getOccurrence(str, mostFrequentChar);
System.out.println("出现次数最多的字符是:" + mostFrequentChar);
System.out.println("出现次数:" + occurrence); }
public static char findMostFrequentChar(String str) {
Map<Character, Integer> charCountMap = new HashMap<>();
for (char c : str.toCharArray()) {
if (charCountMap.containsKey(c)) {
charCountMap.put(c, charCountMap.get(c) + 1);
} else {
charCountMap.put(c, 1);
}
}
char mostFrequentChar = '\0';
int maxCount = 0;
for (Map.Entry<Character, Integer> entry : charCountMap.entrySet()) {
if (entry.getValue() > maxCount) {
mostFrequentChar = entry.getKey();
maxCount = entry.getValue();
}
}
return mostFrequentChar;
}
public static int getOccurrence(String str, char c) {
int count = 0;
for (char ch : str.toCharArray()) {
if (ch == c) {
count++;
}
}
return count;
}
}
```
在这个示例中,字符串 "abcaabbcc" 中出现次数最多的字符是 'a',出现了 3 次。程序会输出如下结果:
```
出现次数最多的字符是:a
出现次数:3
```
阅读全文