我想算在每个元素的出现次数List<List<String>>
,并存储在一个结果Map<String,Long>
。
Map<String, Long> map = new HashMap<>();
for(List<String> l : data) {
for(int i = 0; i < l.size(); i++) {
String myString = l.get(i);
long count = data.stream().filter(d -> myString.equals(d)).count();
map.put(myString, count);
}
}
我的代码返回零为每个键值。有没有办法解决?谢谢。
试试这个:
List<List<String>> listOflists = new ArrayList<>();
//Initialize your list here
Map<String, Long> map = listOflists.stream().flatMap(Collection::stream)
.collect(Collectors.groupingBy(Function.identity(), Collectors.counting()));
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句