日期:2014-05-20  浏览次数:20703 次

我写的这个函数怎么找不出出现最多的字符?
@Test
public void test1() {
String str = "9888";
findChar(str);
}

void findChar(String s) {
// 将字符串转化为字符数组
char c[] = s.toCharArray();
Integer max = 0;
Character maxCh = null ;
Map<Character, Integer> map = new HashMap<Character, Integer>();

for (int i = 0; i < c.length; i++) {
char ch = c[i];
if (!map.containsKey(ch)) {
map.put(ch, 1);

} else {
Integer value = map.get(ch);
map.put(ch, value++);
if (value > max) {
max = value;
maxCh = ch;
}
}
}
System.out.println("出现最多的字符是" + maxCh + "次数为" + max);
}
------解决方案--------------------
++ value