输入一个字符串,统计并显示字符串中各个字目的个数及总数,如输入aaabbacAA,显示a:4 b:2 c:1 A:2 总数为9。
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入想统计的字符串:");
String str = sc.nextLine();
int[] b = counter(str);
int sum = 0;
for (int i = 0; i < b.length; i++) {
if ((b[i] != 0)&&i<26) {
System.out.print((char) (i + 'a')+":"+b[i]+" ");
sum+=b[i];
}else if ((b[i] != 0)&&i>=26) {
System.out.print((char) (i + 'A'-26)+":"+b[i]+" ");
sum+=b[i];
}
}
System.out.println("\n" + "字符串字母总个数为:" + sum);
}
public static int[] counter(String str) {
int[] a = new int[52];
int index=0;
for (int i = 0; i < str.length(); i++) {
char c = str.charAt(i);
if(c>='a'&&c<='z') {
index = c - 'a';
}else if(c>='A'&& c<='Z'){
index=c-'A'+26;
}
a[index] = a[index] + 1;
}
return a;
}
实验如下: