java怎么实现统计一个字符串中字符出现的次数?

2024-12-30 04:17:05
推荐回答(1个)
回答1:

这是我刚根据你的需求写的,你可以参考一下!

我办法很简单,拆分存放数组里面,然后查找数组就可以了!
其实还有更简单的办法,直接用容器比较方便,目前这个办法我自己用数组写的,我个人挺满意的!
import java.util.Scanner;
public class 统计次数 
{
private static Scanner sc=new Scanner(System.in);
public static void main(String[] args) 
{
System.out.println("\n\t\t==========统计字符串中字符次数==========\n");
init();
}//初始化!
private static void init()
{
for (; ; )
{
System.out.println("输入文字:");
char[] arr1=fenJie(input());
System.out.println("查找的字:");
char x=muBiao(fenJie(input()));
int y=chaZhao(arr1,x);
System.out.println("你要找的是\""+x+"\",出现"+y+"次\n===============\n");
}
}
//录入!
private static String input()
{
String s=sc.next();
return s;
}
//分解!
private static char[] fenJie(String s)
{
char[] arr=new char[s.length()];
for (int i=0;i{
arr[i]=(char)(s.charAt(i));
}
return arr;
}
//查找!
private static int chaZhao(char[] arr,char x)
{
int num=0,tem=-1;
for (int a=0,b=arr.length-1;a<=b ;a++,b-- )
{
if(a!=b&&arr[a]==x)num++;
if(a!=b&&arr[b]==x)num++;
if((a==b)&&(arr[a]==x||arr[b]==x))num++;
tem=num;
}
return tem;
}
//目标
private static char muBiao(char[] arr)
{
return arr[0];
}
}