我想在Java中用字符串出现的次数在ArrayList<String>中排名。
像这样:如果我有一个
ArrayList<String>= [French, English, German, French, French, Belgium, English, Belgium]
我计算"French", "English", "Belgium",etc.出现的数字。因此法语出现3次,英语出现2次,比利时出现2次,德语出现1次。然后我想将ArrayList<String>放在数字的功能中。

结果将是:

French 3
English 2
Belgium 2
German 1

我该怎么做?如何关联整数和字符串?

最佳答案

任何时候需要关联数据时,都应该一直考虑使用MapHashMap是用于此的基本类。因此,您可以遍历列表,并使用Map<String, Integer>创建关联。

List<String> stuff = new ArrayList<String>();
// ...populate it

Map<String, Integer> map = new HashMap<String, Integer>();
for(String string : stuff) {
    if(map.containsKey(string)) {
        map.put(string, map.get(string) + 1);
    }
    else {
        map.put(string, 1);
    }
}

查看完整的HashMap API here

09-10 07:17
查看更多