目錄
- 流遍歷 forEach ( Consumer<? super T> action )
- 流過濾 filter
- 流排序 sorted
- 流匹配
- anyMatch
- allMatch
- noneMatch
- 流計數 count
- 流規約 reduce
- 流映射 map ( Consumer<? super T> action )
- 並行流操作 parallelStream
1> 流過濾
stringCollection
.stream()
.filter((s) -> s.startsWith("a"))
.forEach(list1::add);
2> 流排序
stringCollection
.stream()
.sorted()
.forEach(list2::add);
3> 流匹配
boolean flag1 =
stringCollection
.stream()
.sorted()
.anyMatch(a->a.startsWith("a"));
boolean flag2 =
stringCollection
.stream()
.sorted()
.anyMatch(a->a.startsWith("a"));
boolean flag3 =
stringCollection
.stream()
.sorted()
.anyMatch(a->a.startsWith("a"));
4> 流規約
Optional<Integer> res =
list
.stream()
.reduce((a,b)->a+b);
//res.ifPresent(System.out::println);
int result = res.get();
Optional<String> temp_res = stringCollection
.stream()
.reduce((a,b)->a+","+b);
String res = "["+temp_res.get()+"]";
System.out.println(res);
5> 流映射
stringCollection
.stream()
.map(String::toLowerCase)
.forEach(list3::add);
6> 並行流操作
☞ 使用parallelStream()替換stream()即可。