- java.lang.Object
-
- develop.toolkit.base.utils.ArrayAdvice
-
public final class ArrayAdvice extends Object
数组增强工具- 作者:
- qiushui on 2020-07-17.
-
-
构造器概要
构造器 构造器 说明 ArrayAdvice()
-
方法概要
所有方法 静态方法 具体方法 修饰符和类型 方法 说明 static <E> booleanallAccept(E[] array, Function<E,?> function)判断所有元素的处理值相等static <E> booleanallMatch(E[] array, Predicate<E> predicate)全部匹配static <E> booleananyMatch(E[] array, Predicate<E> predicate)任意一个匹配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> Set<E>complementary(E[] master, E[] other)补集static <E> booleancontains(E[] array, Object target)检查元素存在static <E> booleancontains(E[] array, Object target, Function<E,?> function)检查元素存在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>grouping(E[] array, Function<E,K> keySupplier, Function<E,V> valueSupplier)分组static <K,V>
ListInMap<K,V>grouping(V[] array, Function<V,K> keySupplier)static <E,K>
Counter<K>groupingCount(E[] array, Function<E,K> keySupplier)分组求数量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[]merge(Class<E> clazz, E[]... arrays)合并多数组static <E> voidpagingProcess(E[] array, int size, Consumer<E[]> consumer)分页处理static <E> TwoValues<List<E>,List<E>>partition(E[] collection, Predicate<E> predicate)划分 按条件把集合拆分成满足条件和不满足条件的两个集合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[] master, E[]... other)并集static <T,S>
List<TwoValues<T,S>>zip(T[] master, S[] other)压缩 将两个集合的元素按索引捆绑到一起
-
-
-
方法详细资料
-
contains
public static <E> boolean contains(E[] array, Object target, Function<E,?> function)检查元素存在
-
contains
public static <E> boolean contains(E[] array, Object target)检查元素存在
-
getFirstMatch
public static <E> Optional<E> getFirstMatch(E[] array, Object target, Function<E,?> function)
获得第一个匹配的元素
-
getFirstTrue
public static <E> Optional<E> getFirstTrue(E[] array, Predicate<E> predicate)
获得第一个判断是true的元素
-
getFirstFalse
public static <E> Optional<E> getFirstFalse(E[] array, Predicate<E> predicate)
获得第一个判断是false的元素
-
getAllMatch
public static <E> List<E> getAllMatch(E[] array, Object target, Function<E,?> function)
获得全部匹配的元素
-
allMatch
public static <E> boolean allMatch(E[] array, Predicate<E> predicate)全部匹配
-
anyMatch
public static <E> boolean anyMatch(E[] array, Predicate<E> predicate)任意一个匹配
-
allAccept
public static <E> boolean allAccept(E[] array, Function<E,?> function)判断所有元素的处理值相等
-
grouping
public static <E,K,V> ListInMap<K,V> grouping(E[] array, Function<E,K> keySupplier, Function<E,V> valueSupplier)
分组
-
groupingUniqueKey
public static <K,V> Map<K,V> groupingUniqueKey(V[] array, Function<V,K> keySupplier)
-
groupingCount
public static <E,K> Counter<K> groupingCount(E[] array, Function<E,K> keySupplier)
分组求数量
-
union
@SafeVarargs public static <E> Set<E> union(E[] master, E[]... other)
并集
-
intersection
@SafeVarargs public static <E> Set<E> intersection(E[] master, E[]... other)
交集
-
complementary
public static <E> Set<E> complementary(E[] master, E[] other)
补集
-
merge
@SafeVarargs public static <E> E[] merge(Class<E> clazz, E[]... arrays)
合并多数组
-
associate
public static <E,T> ListInMap<E,T> associate(E[] master, T[] target, BiPredicate<E,T> predicate)
关联 将集合target按条件与集合master配对
-
associateOne
public static <E,T> KeyValuePairs<E,T> associateOne(E[] master, T[] target, BiPredicate<E,T> predicate)
关联 (明确是单个的) 将集合target按条件与集合master配对
-
partition
public static <E> TwoValues<List<E>,List<E>> partition(E[] collection, Predicate<E> predicate)
划分 按条件把集合拆分成满足条件和不满足条件的两个集合
-
pagingProcess
public static <E> void pagingProcess(E[] array, int size, Consumer<E[]> consumer)分页处理
-
sort
public static <T,S> List<T> sort(T[] master, S[] sortTarget, BiPredicate<T,S> predicate)
指定排序 把master的元素值按sortTarget的元素值排序,条件按predicate
-
sort
public static <T,S> List<T> sort(T[] master, Collection<S> sortTarget, BiPredicate<T,S> predicate)
-
-