第1个回答 2009-08-25
//很多的简便方法..多了解下API
import java.util.Arrays;
import java.util.Collections;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Set;
public class test {
public static void main(String[] args) {
String str = "68765Shfsa*3219(6faylahjyAbo81av)tiA52N<6#6&0_84=";
Map table = new LinkedHashMap(); //创建个键值对
char[] c = str.toCharArray(); //把字符串变成char数组
Arrays.sort(c); //自动排序
for (char b : c) {
if (table.containsKey(b)) { //当存在.值加1位数
Integer count = (Integer) table.get(b);
table.put(b, new Integer(count.intValue() + 1));
} else{
table.put(b, new Integer(1)); //不存在.添加.值为1
}
}
String output="字符\tASCII\t数量\n";
Set set = table.keySet();
Iterator it = set.iterator();
while (it.hasNext()) { //循环输出结果
Object obj = it.next();
output+=obj+"\t"+obj.hashCode()+"\t"+table.get(obj)+"\n";
}
output+="size: "+table.size()+"\n";
System.out.println(output);
}
}