1、Stream流
java.util.stream.Stream是Java 8新加入的最常用的流接口(并不是一个函数式接口)
获取一个流非常简单,有以下几种常用的方式:
-所有的Collection集合都可以通过stream默认方法获取流;
default Stream stream( )
-Stream接口的静态方法可以获取数组对应的流。
static Stream of (T…values)
参数是一个可变参数,那么我们就可以传递一个数组
代码演示:
import java.util.*;
import java.util.stream.Stream;
public class Demo01Stream {
public static void main(String[] args) {
//把集合转换为Stream流
List<String> list = new ArrayList<>();
Stream<String> stream = list.stream();
Set<String> set = new HashSet<>();
Stream<String> stream1 = set.stream();
Map<String,String> map = new HashMap<>();
//获取键,存储到一个Set集合中
Set<String> keySet = map.keySet();
Stream<String> stream2 = keySet.stream();
//获取值,存储到一个Collection集合中
Collection<String> values = map.values();
Stream<String> stream3 = values.stream();
//获取键值对(键与值的映射关系 entrySet)
Set<Map.Entry<String, String>> entries = map.entrySet();
Stream<Map.Entry<String, String>> stream4 = entries.stream();
//把数组转换为Stream流
Stream<Integer> stream5 = Stream.of(1, 2, 3, 4, 5);
//可变参数可以传递数组
Integer[] arr = {
1, 2, 3, 4, 5};
Stream<Integer> stream6 = Stream.of(arr);
String[] arr2 = {
"a", "b", "c"};
Stream<String