学习了别人的方法,觉得挺巧妙的。就是每次取出字符串的第一个字符,将字符串中与第一个字符相同的字符全部删除掉,然后通过计算删除前后字符串的长度来确定该字符在字符串中出现的次数,最终比较出出现最多次的字符。
import java.util.Scanner; public class Lily { public static void main(String[] args) { Scanner scanner=new Scanner(System.in); String string=scanner.nextLine().trim(); scanner.close(); int max_length=0; String max_str=""; while (string.length()>0) { String first=string.substring(0, 1); int length=string.length(); string=string.replaceAll(first, ""); if (max_length<length-string.length()) { max_length=length-string.length(); max_str=first; } } System.out.println(max_str.toCharArray()[0]); } }