编写一个Java程序,通过示例查找字符串中出现次数最多的字符。首先,我们将max值初始化为-1,并声明大小为256的charFreq整数数组。
第一个for循环用于计算maxOccStr字符串字符的出现次数。另一个for循环用于查找字符的最大出现次数。
import java.util.Scanner;
public class MaxOccurChar1 {
private static Scanner sc;
public static void main(String[] args) {
String maxOccStr;
char maxChar = ' ';
int i, max = -1;
int[] charFreq = new int[256];
sc= new Scanner(System.in);
System.out.print("\nEnter String to find Maximum Char Occurrence = ");
maxOccStr = sc.nextLine();
for(i = 0; i < maxOccStr.length(); i++)
{
charFreq[maxOccStr.charAt(i)]++;
}
for(i = 0; i < maxOccStr.length(); i++)
{
char ch = maxOccStr.charAt(i);
if(max < charFreq[ch]) {
max = charFreq[ch];
maxChar = ch;
}
}
System.out.println("\nThe Maximum Occurring Character = " + maxChar);
System.out.format("'%c' Character Occurs %d Times ", maxChar, max);
}
}

使用While循环的Java程序查找字符串中出现次数最多的字符
import java.util.Scanner;
public class MaxOccurChar2 {
private static Scanner sc;
public static void main(String[] args) {
String maxOccStr;
char maxChar = ' ';
int i = 0, j = 0, max = -1;
int[] charFreq = new int[256];
sc= new Scanner(System.in);
System.out.print("\nEnter String = ");
maxOccStr = sc.nextLine();
while(i < maxOccStr.length())
{
charFreq[maxOccStr.charAt(i)]++;
i++;
}
while(j < maxOccStr.length())
{
char ch = maxOccStr.charAt(j);
if(max < charFreq[ch]) {
max = charFreq[ch];
maxChar = ch;
}
j++;
}
System.out.println("\nThe Maximum Occurring Character = " + maxChar);
System.out.format("'%c' Character Occurs %d Times ", maxChar, max);
}
}
使用While循环输出出现次数最多的字符串字符
Enter String = java programming
The Maximum Occurring Character = a
'a' Character Occurs 3 Times
这是另一个查找字符串中出现次数最多的字符的代码示例。
import java.util.Scanner;
public class MaxOccurChar3 {
private static Scanner sc;
public static void main(String[] args) {
String maxOccStr;
int i, max = 0;
int[] charFreq = new int[256];
sc= new Scanner(System.in);
System.out.print("\nEnter Any Text = ");
maxOccStr = sc.nextLine();
for(i = 0; i < maxOccStr.length(); i++)
{
charFreq[maxOccStr.charAt(i)]++;
}
for(i = 0; i < 256; i++)
{
if(charFreq[i] > charFreq[max]) {
max = i;
}
}
System.out.format("\nThe Maximum Occurring Character = %c", max);
System.out.format("\n'%c' Character Occurs %d Times ", max, charFreq[max]);
}
}
Enter Any Text = tutorial gateway
The Maximum Occurring Character = a
'a' Character Occurs 3 Times
这将找到出现次数最多的字符串字符,示例与上述相同。在这里,我们使用Java函数分离了逻辑。
import java.util.Scanner;
public class MaxOccurChar4 {
private static Scanner sc;
public static void main(String[] args) {
String maxOccStr;
sc= new Scanner(System.in);
System.out.print("\nEnter String = ");
maxOccStr = sc.nextLine();
maxCharOccur(maxOccStr);
}
public static void maxCharOccur(String maxOccStr) {
int i, max = 0;
int[] charFreq = new int[256];
for(i = 0; i < maxOccStr.length(); i++)
{
charFreq[maxOccStr.charAt(i)]++;
}
for(i = 0; i < 256; i++)
{
if(charFreq[i] > charFreq[max]) {
max = i;
}
}
System.out.format("\nThe Maximum Occurring Character = %c", max);
System.out.format("\n'%c' Character Occurs %d Times ", max, charFreq[max]);
}
}
Enter String = hello world
The Maximum Occurring Character = l
'l' Character Occurs 3 Times
在此程序中,要返回字符串中出现次数最多的字符,首先,我们声明maxOccStr字符串长度的charFreq整数数组。接下来,我们使用toCharArray将maxOccStr字符串转换为maxOccArr字符数组。
第一个for循环用于将maxChar字符频率分配给charFreq数组。然后,我们将第一个charFreq字符分配为maxchar。另一个for循环用于查找字符的最大出现次数。
import java.util.Scanner;
public class MaxOccurChar5 {
private static Scanner sc;
public static void main(String[] args) {
String maxOccStr;
int i, max;
sc= new Scanner(System.in);
System.out.print("\nEnter String to find Max Char Occur = ");
maxOccStr = sc.nextLine();
int[] charFreq = new int[maxOccStr.length()];
char[] maxOccArr = maxOccStr.toCharArray();
char maxChar = maxOccStr.charAt(0);
for(i = 0; i < maxOccArr.length; i++)
{
charFreq[i] = 1;
for(int j = i + 1; j < maxOccArr.length; j++) {
if(maxOccArr[i] == maxOccArr[j] && maxOccArr[i] != ' ' && maxOccArr[i] != '0') {
charFreq[i]++;
maxOccArr[j] = '0';
}
}
}
max = charFreq[0];
for(i = 0; i < charFreq.length; i++)
{
if(max < charFreq[i]) {
max = charFreq[i];
maxChar = maxOccArr[i];
}
}
System.out.println("\nThe Maximum Occurring Character = " + maxChar);
System.out.format("'%c' Character Occurs %d Times ", maxChar, max);
}
}
Enter String to find Max Char Occur = happy coding
The Maximum Occurring Character = p
'p' Character Occurs 2 Times