用HashMap
key: 出现的字符
value: 字符出现的次数
就是效率有点低
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
/**
* 计算某字符出现次数
*/
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String s = in.nextLine();
String c = in.nextLine();
System.out.println(count(s, c));
}
public static int count(String s,String c){
Map<Character,Integer> cMap = new HashMap<Character,Integer>();
char[] cs = s.trim().toLowerCase().toCharArray();
char cc = c.trim().toLowerCase().charAt(0);
for (char c1 : cs) {
if(cMap.containsKey(c1)){
cMap.put(c1,(Integer)cMap.get(c1)+1);
}else {
cMap.put(c1,1);
}
}
return cMap.get(cc)==null?0:cMap.get(cc);
}
}