首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

String数组重复项统计,该怎么解决

2012-05-02 
String数组重复项统计我有一个英文的文本,已经存为了String[],现在想统计这个文本的词频,并且从高到底排序

String数组重复项统计
我有一个英文的文本,已经存为了String[],现在想统计这个文本的词频,并且从高到底排序,应该如何写?

[解决办法]

Java code
public class Test {    public static void main(String[] args) {        String[] strs = new String[]{"a","b","a"};        Map<String, Integer> map = new HashMap<String, Integer>();        for(String s : strs){            Integer key = map.get(s);            if(key == null){                map.put(s, 1);            }else{                map.put(s, key.intValue() + 1);            }        }        Set<Entry<String, Integer>> set = map.entrySet();        List<Entry<String, Integer>> list = new ArrayList<Entry<String, Integer>>();        Iterator<Entry<String, Integer>> iter = set.iterator();        while(iter.hasNext()){            list.add(iter.next());        }        Collections.sort(list, new ComparatorEntry());        for(Entry<String, Integer> entry : list){            System.out.println(entry.getKey() + " : " + entry.getValue());        }    }}class ComparatorEntry implements Comparator<Entry<String, Integer>>{    @Override    public int compare(Entry<String, Integer> o1, Entry<String, Integer> o2) {        return o2.getValue().intValue() - o1.getValue().intValue();    }} 

热点排行