java.util.stream.Stream<T> 是Java 8新加入的最常用的流接口。(这并不是一个函数式接口。)
获取一个流非常简单,有以下几种常用的方式:
- 所有的
Collection集合都可以通过stream默认方法获取流; Stream接口的静态方法of可以获取数组对应的流。
方式1:根据Collection获取
首先,java.util.Collection接口中加入了default方法stream用来获取流,所以其所有实现类均可获取流。
public class StreamApiTest {@Testpublic void streamApiTest(){ArrayList<String> list = new ArrayList<>();HashSet<String> set = new HashSet<>();Stream<String> listStream = list.stream();Stream<String> setStream = set.stream();}}
方式2:根据数组获取流
如果使用的不是集合或映射而是数组,由于数组对象没有默认的方法,但是我们可以通过以下两种方式来获取流
Arrays.stream()方法Stream.of()方法
通过Arrays工具类
public class StreamApiTest {@Testpublic void streamApiTest(){int[] arr = new int[]{1,2,3,4,5};IntStream stream2 = Arrays.stream(arr);}}
通过Stream提供的of方法
public class StreamApiTest {@Testpublic void streamApiTest(){int[] arr = new int[]{1,2,3,4,5};Stream<int[]> stream = Stream.of(arr);}}
