【发布时间】:2020-02-10 00:42:29
【问题描述】:
我正在尝试计算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);
}
}
我的代码返回零作为每个键的值。有没有办法解决它?谢谢。
【问题讨论】:
-
提示:字符串永远不会等于列表
。其他提示:Stream 有 flatMap 方法,Collectors 有 toMap() 方法。 -
groupingBy 是另一个(更好的)选项,顺便说一句。
标签: java list data-structures hashmap