一、创建流
1.Collection.stream()
:从集合创建一个顺序流。
2.Collection.parallelStream()
:从集合创建一个并行流,可利用多核处理器进行并行处理
3.Stream.of()
:通过传入一系列元素创建一个流。
例如:
二、中间操作
1. filter(Predicate<? super T> predicate)
filter
方法用于过滤流中的元素,只保留满足给定谓词条件的元素。
2. limit(long maxSize)
limit
方法用于截取流中的前n
个元素。
3. skip(long n)
skip
方法用于跳过流中的前n
个元素。
4. distinct()
distinct
方法用于去除流中的重复元素。
5.concat(Stream<? extends T> a, Stream<? extends T> b)
concat
方法用于连接两个流。
6. map(Function<? super T,? extends R> mapper)
map
方法用于将流中的每个元素通过映射函数转换为另一个元素。
三、终端操作
1. forEach(Consumer<? super T> action)
forEach
方法用于对流中的每个元素执行一个操作。
2. count()
count
方法用于统计流中的元素个数。
3. toArray()
toArray
方法用于将流转换为数组。
4. collect(Collector<? super T,A,R> collector)
collect
方法用于将流中的元素收集到一个结果容器中,如集合、字符串等。这里以收集到List
为例。