本帖最后由 sunhaodi 于 2012-7-10 16:41 编辑
public class StringTest {
public static void main(String[] args) {
String s = "abcdekka27qoq";
HashMap<Character,Integer> mp = new HashMap<Character,Integer>();
for(int i=0;i<s.length();i++){
char c=s.charAt(i);
Integer count=mp.get(c);
if(count==null) //这里为什么count==null count=1 啊 如果=null的话,那就一个都没有还要记录1个不是错了吗,但是结果输出来又是对的。希望高手解释下。
count=1;
else
count++;
mp.put(c, count);
}
Set<Map.Entry<Character, Integer>> entrys= mp.entrySet();
for (Map.Entry<Character, Integer> entry : entrys) {
System.out.print(entry.getKey()+"("+entry.getValue()+")");
}
}
}
"abcdekka27qoq" ,输出格式为:a(2)b(1)k(2)
|
|