我有问题如何计算java中ArrayList中的匹配元素.例如:我的ArrayList包含[运动,运动,球,运动员,运动]
我需要输出像:
word sport frequency 3
word ball frequency 1
word player frequency 1
Run Code Online (Sandbox Code Playgroud)
谢谢你的进步
使用地图:
Map<String, Integer> occurrencies = new HashMap<String, Integer>();
for (String word : list) {
occurrencies.put(word, occurrencies.containsKey(word)
? occurrencies.get(word) + 1 : 1);
}
for (Entry<String, Integer> entry : occurrencies.entrySet()) {
System.out.println("Word: "+entry.getKey()
+ ", occurences: "+entry.getValue());
}
Run Code Online (Sandbox Code Playgroud)
如果您希望按字母顺序对单词进行排序,请使用TreeMap而不是HashMap.
(当然,使用番石榴会Multiset比其他人建议的要容易得多)
| 归档时间: |
|
| 查看次数: |
1529 次 |
| 最近记录: |