/**
* 适用于 jdk 1.8及以下,统计List集合中每个元素出现的次数
* 例如frequencyOfListElements(["111","111","222"])
* ->
* 则返回Map {"111"=2,"222"=1}
* @param items
* @return Map<String,Integer>
* @author wuqx
*/
public static Map<String,Integer> frequencyOfListW(List<String> items ) {
Map<String, Integer> map = new HashMap<>();
if (items == null || items.size() == 0) {
return map;
}
for (String k: items) {
Integer count = map.get(k);
map.put(k, (count == null) ? 1 : count + 1);
}
return map;
}
/**
* 适用于 jdk 1.8及以上, 统计List集合中每个元素出现的次数
* 例如frequencyOfListElements(["111","111","222","333"])
* ->
* 则返回Map {111=2, 222=1, 333=1}
* @param falcons
* @return Map<String,Integer>
*/
public static Map<String, Long> frequencyOfListQ(List<String> falcons){
if(CollectionUtils.isEmpty(falcons)){
return new HashMap<>();
}
return falcons.stream().collect(Collectors.groupingBy(k->k, Collectors.counting()));
}
Java统计List集合中每个元素出现的次数
于 2019-01-21 17:30:00 首次发布