java.lang.Object
develop.toolkit.base.utils.ArrayAdvice
数组增强工具
- Author:
- qiushui on 2020-07-17.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfacestatic interface -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic <E> boolean判断所有元素的处理值相等static <E> boolean全部匹配static <E> boolean任意一个匹配static <E,T> ListInMap<E, T> associate(E[] master, T[] target, BiPredicate<E, T> predicate) 关联 将集合target按条件与集合master配对static <E,T> KeyValuePairs<E, T> associateOne(E[] master, T[] target, BiPredicate<E, T> predicate) 关联 (明确是单个的) 将集合target按条件与集合master配对static <E> boolean检查元素存在static <E> boolean检查元素存在static <E> Set<E>difference(E[] master, E[] other) 差集static <E> List<E>getAllMatch(E[] array, Object target, Function<E, ?> function) 获得全部匹配的元素static <E> Optional<E>getFirstFalse(E[] array, Predicate<E> predicate) 获得第一个判断是false的元素static <E> Optional<E>getFirstMatch(E[] array, Object target) 获得第一个匹配的元素static <E> Optional<E>getFirstMatch(E[] array, Object target, Function<E, ?> function) 获得第一个匹配的元素static <E> Optional<E>getFirstTrue(E[] array, Predicate<E> predicate) 获得第一个判断是true的元素static <E,K, V> ListInMap<K, V> 分组static <K,V> ListInMap<K, V> static <E,K> Counter<K> groupingCount(E[] array, Function<E, K> keySupplier) 分组求数量static <E,K, V> Map<K, V> groupingUniqueKey(E[] array, Function<E, K> keySupplier, Function<E, V> valueSupplier) static <K,V> Map<K, V> groupingUniqueKey(V[] array, Function<V, K> keySupplier) static <E> Set<E>intersection(E[] master, E[]... other) 交集static <E> E[]合并多数组static <T> voidpagingProcess(T[] array, int size, ArrayAdvice.PagingProcessor<T> consumer) 分页处理static <T,R> R pagingProcess(T[] array, int size, R initialValue, BiFunction<R, R, R> reduceFunction, ArrayAdvice.PagingReduceProcessor<T, R> consumer) 分页处理划分 按条件把集合拆分成满足条件和不满足条件的两个集合static <T,S> List<T> sort(T[] master, Collection<S> sortTarget, BiPredicate<T, S> predicate) static <T,S> List<T> sort(T[] master, S[] sortTarget, BiPredicate<T, S> predicate) 指定排序 把master的元素值按sortTarget的元素值排序,条件按predicatestatic <E> Set<E>union(E[]... arrays) 并集zip(T[] master, S[] other) 压缩 将两个集合的元素按索引捆绑到一起
-
Constructor Details
-
ArrayAdvice
public ArrayAdvice()
-
-
Method Details
-
contains
检查元素存在 -
contains
检查元素存在 -
getFirstMatch
获得第一个匹配的元素 -
getFirstMatch
获得第一个匹配的元素 -
getFirstTrue
获得第一个判断是true的元素 -
getFirstFalse
获得第一个判断是false的元素 -
getAllMatch
获得全部匹配的元素 -
allMatch
全部匹配 -
anyMatch
任意一个匹配 -
allAccept
判断所有元素的处理值相等 -
grouping
public static <E,K, ListInMap<K,V> V> grouping(E[] array, Function<E, K> keySupplier, Function<E, V> valueSupplier) 分组 -
grouping
-
groupingUniqueKey
-
groupingUniqueKey
-
groupingCount
分组求数量 -
union
并集 -
intersection
交集 -
difference
差集 -
merge
合并多数组 -
associate
关联 将集合target按条件与集合master配对 -
associateOne
public static <E,T> KeyValuePairs<E,T> associateOne(E[] master, T[] target, BiPredicate<E, T> predicate) 关联 (明确是单个的) 将集合target按条件与集合master配对 -
partition
划分 按条件把集合拆分成满足条件和不满足条件的两个集合 -
zip
压缩 将两个集合的元素按索引捆绑到一起 -
pagingProcess
分页处理 -
pagingProcess
public static <T,R> R pagingProcess(T[] array, int size, R initialValue, BiFunction<R, R, R> reduceFunction, ArrayAdvice.PagingReduceProcessor<T, R> consumer) 分页处理 -
sort
指定排序 把master的元素值按sortTarget的元素值排序,条件按predicate -
sort
-