list重复数据转map空指针
时间: 2023-11-14 18:08:31 浏览: 61
java8快速实现List转map 、分组、过滤等操作
5星 · 资源好评率100%
可以使用Java 8的Stream API将重复数据转换为Map。具体实现如下:
```
List<String> list = Arrays.asList("a", "b", "c", "a", "b");
Map<String, Long> map = list.stream()
.collect(Collectors.groupingBy(Function.identity(), Collectors.counting()));
System.out.println(map);
```
输出结果为:{a=2, b=2, c=1}
其中,groupingBy方法根据元素的值进行分组,counting方法统计每个分组中元素的数量。
如果list中存在null元素,可以使用下面的代码:
```
List<String> list = Arrays.asList("a", "b", "c", "a", "b", null);
Map<String, Long> map = list.stream()
.filter(Objects::nonNull)
.collect(Collectors.groupingBy(Function.identity(), Collectors.counting()));
System.out.println(map);
```
输出结果为:{a=2, b=2, c=1}
阅读全文