如何用 Java 打印一个字符串中出现次数最多的字符?
可以使用 String 类来表示字符串,Java 程序中的所有字符串文字都是作为 String 类的实例实现的。这些字符串常量一旦创建就不能再更改值(不可变)。
在下面的程序中,我们可以打印给定字符串中出现次数最多的字符。
示例
public class MaxOccuredCharacterTest {
public static void main(String[] args) {
String str1 = maxOccuredChar("tutorialspoint");
System.out.println(str1);
String str2 = maxOccuredChar("AABBAABBCCAABBAA");
System.out.println(str2);
String str3 = maxOccuredChar("111222333444333222111");
System.out.println(str3);
}
public static String maxOccuredChar(String str) {
char[] array = str.toCharArray();
int maxCount = 1;
char maxChar = array[0];
for(int i=0, j=0; i < str.length()-1; i=j) {
int count = 1;
while(++j < str.length() && array[i] == array[j]) {
count++;
}
if (count > maxCount) {
maxCount = count;
maxChar = array[i];
}
}
return (maxChar + " = " + maxCount);
}
}
输出
t = 1 A = 2 1 = 3
广告
数据结构
网络
关系数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP