T
- 流中的元素类型S
- TerminableWrappedStream
的实现类类型public interface TerminableWrappedStream<T,S extends TerminableWrappedStream<T,S>> extends WrappedStream<T,S>
WrappedStream
的扩展,用于为实现类提供更多终端操作方法的增强接口,
该接口提供的方法,返回值类型都不为Stream
。Stream.Builder<T>
NOT_FOUND_ELEMENT_INDEX
Modifier and Type | Method and Description |
---|---|
default Optional<T> |
at(Integer idx)
获取流中指定下标的元素,如果是负数,则从最后一个开始数起
|
default Optional<T> |
findFirst(Predicate<? super T> predicate)
获取与给定断言匹配的第一个元素
|
default int |
findFirstIdx(Predicate<? super T> predicate)
获取与给定断言匹配的第一个元素的下标,并行流下标永远为-1
|
default Optional<T> |
findLast()
获取最后一个元素
|
default Optional<T> |
findLast(Predicate<? super T> predicate)
获取与给定断言匹配的最后一个元素
|
default int |
findLastIdx(Predicate<? super T> predicate)
获取与给定断言匹配的最后一个元素的下标,并行流下标永远为-1
|
default void |
forEachIdx(BiConsumer<? super T,Integer> action)
对流里面的每一个元素执行一个操作,操作带下标,并行流时下标永远为-1
这是一个终端操作
|
default void |
forEachOrderedIdx(BiConsumer<? super T,Integer> action)
对流里面的每一个元素按照顺序执行一个操作,操作带下标,并行流时下标永远为-1
这是一个终端操作
|
default <K> Map<K,List<T>> |
group(Function<? super T,? extends K> classifier)
通过给定分组依据进行分组
|
default <K,A,D> Map<K,D> |
group(Function<? super T,? extends K> classifier,
Collector<? super T,A,D> downstream)
通过给定分组依据进行分组
|
default <K,D,A,M extends Map<K,D>> |
group(Function<? super T,? extends K> classifier,
Supplier<M> mapFactory,
Collector<? super T,A,D> downstream)
通过给定分组依据进行分组
|
default boolean |
isEmpty()
流是否为空
|
default boolean |
isNotEmpty()
流是否不为空
|
default String |
join()
返回拼接后的字符串
|
default String |
join(CharSequence delimiter)
返回拼接后的字符串
|
default String |
join(CharSequence delimiter,
CharSequence prefix,
CharSequence suffix)
返回拼接后的字符串
|
default Map<Boolean,List<T>> |
partition(Predicate<T> predicate)
根据给定判断条件分组
|
default <R> Map<Boolean,R> |
partition(Predicate<T> predicate,
Collector<T,?,R> downstream)
根据给定判断条件分组
|
default <C extends Collection<T>> |
partition(Predicate<T> predicate,
Supplier<C> collFactory)
根据给定判断条件分组
|
default <C extends Collection<T>> |
toColl(Supplier<C> collectionFactory)
转换成集合
|
default Map<Integer,T> |
toIdxMap()
转换为map,key为下标,value为元素
|
default <U> Map<Integer,U> |
toIdxMap(Function<? super T,? extends U> valueMapper)
转换为map,key为下标,value为给定操作执行后的返回值
|
default List<T> |
toList()
转换为
ArrayList |
default <K> Map<K,T> |
toMap(Function<? super T,? extends K> keyMapper)
转换为map,key为给定操作执行后的返回值,value为当前元素
|
default <K,U> Map<K,U> |
toMap(Function<? super T,? extends K> keyMapper,
Function<? super T,? extends U> valueMapper)
转换为map,key,value为给定操作执行后的返回值
|
default <K,U> Map<K,U> |
toMap(Function<? super T,? extends K> keyMapper,
Function<? super T,? extends U> valueMapper,
BinaryOperator<U> mergeFunction)
转换为map,key,value为给定操作执行后的返回值
|
default <K,U,M extends Map<K,U>> |
toMap(Function<? super T,? extends K> keyMapper,
Function<? super T,? extends U> valueMapper,
BinaryOperator<U> mergeFunction,
Supplier<M> mapSupplier)
转换为map,key,value为给定操作执行后的返回值
|
default Set<T> |
toSet()
转换为HashSet
|
default List<T> |
toUnmodifiableList()
换为不可变集合
|
default <K,U> Map<K,U> |
toUnmodifiableMap(Function<? super T,? extends K> keyMapper,
Function<? super T,? extends U> valueMapper)
转换为不可变map,key,value为给定操作执行后的返回值
|
default <K,U> Map<K,U> |
toUnmodifiableMap(Function<? super T,? extends K> keyMapper,
Function<? super T,? extends U> valueMapper,
BinaryOperator<U> mergeFunction)
转换为不可变map,key,value为给定操作执行后的返回值
|
default Set<T> |
toUnmodifiableSet()
换为不可变集合
|
default <R> Map<T,R> |
toZip(Iterable<R> other)
与给定的可迭代对象转换成map,key为现有元素,value为给定可迭代对象迭代的元素
至少包含全部的key,如果对应位置上的value不存在,则为null |
allMatch, anyMatch, close, collect, collect, count, distinct, easyStream, equals, filter, findAny, findFirst, flatMapToDouble, flatMapToInt, flatMapToLong, forEach, forEachOrdered, hashCode, isParallel, iterator, limit, mapToDouble, mapToInt, mapToLong, max, min, noneMatch, onClose, parallel, peek, reduce, reduce, reduce, sequential, skip, sorted, sorted, spliterator, toArray, toArray, toString, unordered, unwrap, wrap
default List<T> toList()
ArrayList
toColl(Supplier)
default List<T> toUnmodifiableList()
toColl(Supplier)
default Set<T> toSet()
toColl(Supplier)
default Set<T> toUnmodifiableSet()
toColl(Supplier)
default <C extends Collection<T>> C toColl(Supplier<C> collectionFactory)
C
- 集合类型collectionFactory
- 集合工厂(可以是集合构造器)default <K> Map<K,T> toMap(Function<? super T,? extends K> keyMapper)
K
- key类型keyMapper
- 指定的key操作toMap(Function, Function, BinaryOperator, Supplier)
default <K,U> Map<K,U> toMap(Function<? super T,? extends K> keyMapper, Function<? super T,? extends U> valueMapper)
K
- key类型U
- value类型keyMapper
- 指定的key操作valueMapper
- 指定value操作toMap(Function, Function, BinaryOperator, Supplier)
default <K,U> Map<K,U> toUnmodifiableMap(Function<? super T,? extends K> keyMapper, Function<? super T,? extends U> valueMapper)
K
- key类型U
- value类型keyMapper
- 指定的key操作valueMapper
- 指定value操作toMap(Function, Function, BinaryOperator, Supplier)
default <K,U> Map<K,U> toMap(Function<? super T,? extends K> keyMapper, Function<? super T,? extends U> valueMapper, BinaryOperator<U> mergeFunction)
K
- key类型U
- value类型keyMapper
- 指定的key操作valueMapper
- 指定value操作mergeFunction
- 合并操作toMap(Function, Function, BinaryOperator, Supplier)
default <K,U> Map<K,U> toUnmodifiableMap(Function<? super T,? extends K> keyMapper, Function<? super T,? extends U> valueMapper, BinaryOperator<U> mergeFunction)
K
- key类型U
- value类型keyMapper
- 指定的key操作valueMapper
- 指定value操作mergeFunction
- 合并操作toMap(Function, Function, BinaryOperator, Supplier)
default <K,U,M extends Map<K,U>> M toMap(Function<? super T,? extends K> keyMapper, Function<? super T,? extends U> valueMapper, BinaryOperator<U> mergeFunction, Supplier<M> mapSupplier)
K
- key类型U
- value类型M
- map类型keyMapper
- 指定的key操作valueMapper
- 指定value操作mergeFunction
- 合并操作mapSupplier
- map工厂default <U> Map<Integer,U> toIdxMap(Function<? super T,? extends U> valueMapper)
U
- value类型valueMapper
- 指定value操作default <R> Map<T,R> toZip(Iterable<R> other)
R
- 可迭代对象迭代的元素类型other
- 可迭代对象default Optional<T> findFirst(Predicate<? super T> predicate)
predicate
- 断言default int findFirstIdx(Predicate<? super T> predicate)
predicate
- 断言default Optional<T> findLast(Predicate<? super T> predicate)
predicate
- 断言default int findLastIdx(Predicate<? super T> predicate)
predicate
- 断言default Optional<T> at(Integer idx)
idx
- 下标default boolean isEmpty()
default boolean isNotEmpty()
default String join()
join(CharSequence, CharSequence, CharSequence)
default String join(CharSequence delimiter)
delimiter
- 分隔符join(CharSequence, CharSequence, CharSequence)
default String join(CharSequence delimiter, CharSequence prefix, CharSequence suffix)
delimiter
- 分隔符prefix
- 前缀suffix
- 后缀default <K> Map<K,List<T>> group(Function<? super T,? extends K> classifier)
K
- 实体中的分组依据对应类型,也是Map中key的类型classifier
- 分组依据,得到的键为null
时不会抛出异常group(Function, Supplier, Collector)
default <K,A,D> Map<K,D> group(Function<? super T,? extends K> classifier, Collector<? super T,A,D> downstream)
K
- 实体中的分组依据对应类型,也是Map中key的类型D
- 下游操作对应返回类型,也是Map中value的类型A
- 下游操作在进行中间操作时对应类型classifier
- 分组依据,得到的键为null
时不会抛出异常downstream
- 下游操作group(Function, Supplier, Collector)
default <K,D,A,M extends Map<K,D>> M group(Function<? super T,? extends K> classifier, Supplier<M> mapFactory, Collector<? super T,A,D> downstream)
K
- 实体中的分组依据对应类型,也是Map中key的类型D
- 下游操作对应返回类型,也是Map中value的类型A
- 下游操作在进行中间操作时对应类型M
- 最后返回结果Map类型classifier
- 分组依据,得到的键为null
时不会抛出异常mapFactory
- 提供的mapdownstream
- 下游操作CollectorUtil.groupingBy(Function, Supplier, Collector)
default Map<Boolean,List<T>> partition(Predicate<T> predicate)
predicate
- 判断条件partition(Predicate, Collector)
default <C extends Collection<T>> Map<Boolean,C> partition(Predicate<T> predicate, Supplier<C> collFactory)
C
- 值类型predicate
- 判断条件collFactory
- 提供的集合partition(Predicate, Collector)
default <R> Map<Boolean,R> partition(Predicate<T> predicate, Collector<T,?,R> downstream)
R
- 返回值类型predicate
- 判断条件downstream
- 下游操作default void forEachIdx(BiConsumer<? super T,Integer> action)
action
- 操作default void forEachOrderedIdx(BiConsumer<? super T,Integer> action)
action
- 操作Copyright © 2025. All rights reserved.