java8Stream常用

java8Stream常用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43


//1.stream某一个元素计数
long count = myInfoList.stream().mapToInt(item -> item.getAge()).sum();
System.out.println(count);

//2.stream过滤后某一个元素计数
long count2 = myInfoList.stream().filter(item -> item.getAge() > 21).mapToInt(item -> item.getAge()).sum();
System.out.println(count2);



//3.过滤后统计集合大小
long count1 = myInfoList.stream().filter(item -> item.getAge() > 21).count();
System.out.println(count1);

//4.过滤后收集
List<MyInfo> collect = myInfoList.stream().filter(item -> item.getAge() > 21).collect(Collectors.toList());
System.out.println(collect);

//5.判断是否有该元素
boolean flag = myInfoList.stream().anyMatch(item -> item.getName().equals("pengm1"));
System.out.println(flag);

//6.分组
Map<Integer, List<MyInfo>> collect1 = myInfoList.stream().collect(Collectors.groupingBy(item -> item.getAge()));
System.out.println(collect1);
Map<Integer, Map<String, List<MyInfo>>> collect2 = myInfoList.stream().collect(Collectors.groupingBy(item -> item.getAge(), Collectors.groupingBy(item -> item.getName())));
System.out.println(collect2);

//7.list转map
Map<String, MyInfo> myInfoMap= list.stream().collect(
Collectors.toMap(item -> String.valueOf(item.getName()), item-> item));

//8.map转list
map.values().stream().collect(Collectors.toList());
map.keySet().stream().collect(Collectors.toList());


//9.收集一个元素
List<String> uidList = myInfoList.stream()
.map(MyInfo::getUid)
.collect(Collectors.toList());
文章目录
  1. 1. java8Stream常用
|