输入AAABBBBCCDDD,统计A B C D各多少(结果是A3B4C2D3)
import java.util.Iterator;
import java.util.Map;
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
String dataString = "AABCCCDDDDD";
Map<String, Integer> outMap = getOutMap(dataString);
Iterator<String> iterator = outMap.keySet().iterator();
while (iterator.hasNext()) {
Object key = iterator.next();
Integer value = outMap.get(key);
System.out.print(key.toString() + value);
}
}
public static Map<String, Integer> getOutMap(String dataString) {
Map<String, Integer> outMap = new java.util.HashMap<String, Integer>();
for (int i = 0; i < dataString.length(); i++) {
if (outMap.containsKey(String.valueOf(dataString.charAt(i)))) {
Integer value = outMap
.get(String.valueOf(dataString.charAt(i))) + 1;
outMap.put(String.valueOf(dataString.charAt(i)), value);
} else {
outMap.put(String.valueOf(dataString.charAt(i)), 1);
}
}
return outMap;
}
}