如何用 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
广告