方法一:
public class test21 {
public static void main(String[] args) {
a("abnclnacnacipnsakkcnsa");
}
public static void a(String a){
while (a.length()!=0){
int count=a.length();
char a0=a.charAt(0);
String[] bs = a.split(String.valueOf(a.charAt(0)));
if (bs.length!=0){//防止數組越界
a=bs[0];
for (int i = 1; i < bs.length; i++) {
a=a.concat(bs[i]);
}
System.out.println(a0+"的個數為"+(count-a.length()));}
else {
System.out.println(a.charAt(0)+"的個數為"+a.length());
break;
}
}
}
方法二:利用map中key不能重復的機制
import java.util.*;
public class Test02 {
public static void main(String[] args) {
Scanner s=new Scanner(System.in);
String a=s.next();
HashMap<Character,Integer> map = new HashMap();
for (char c : a.toCharArray()) {
if (map.containsKey(c)){
int value = map.get(c);
value++;
map.put(c,value);
}else
map.put(c,1);
}
Set<Character> set = map.keySet();
for (Character character : set) {
System.out.println(character+" "+map.get(character));
}
}
}