类 CollectionUtil
java.lang.Object
me.codeplayer.util.CollectionUtil
List、Set、Map等常见集合数据操作的工具类
- 从以下版本开始:
- 2014-10-21
- 作者:
- Ready
-
构造器概要
构造器 -
方法概要
修饰符和类型方法说明static <E> Collection<E>addAll(Collection<E> target, E... elements) 将可变参数形式的键值数组添加到一个Map集合中static <E> Collection<E>addAll(Collection<E> target, Predicate<? super E> filter, E... elements) 将可变参数形式的键值数组添加到一个 Map 集合中static <K,V> Map<K, V> 将可变参数形式的键值数组添加到一个 Map 集合中protected static voidcheckPairs(Object... pairs) static <E> List<E>filter(Collection<E> c, Predicate<? super E> matcher) 过滤指定的集合,并返回获得符合条件的新集合static <T> TfindFirst(Collection<T> range, Predicate<? super T> filter) 遍历集合,并使用指定的过滤器进行检测,返回遍历到的第一个符合条件的元素static <T> TgetAny(Collection<T> range) 遍历集合,并使用指定的过滤器进行检测,返回遍历到的第一个元素static <T,R> R[] mapField(Collection<T> list, Class<R> fieldType, Function<? super T, ? extends R> mapper) 依次将集合中每个元素进行指定的映射,。static intmapInitialCapacity(int realCapacity) 根据真实的元素个数和默认的负载因子,计算 Map 集合合理的容量初始值static intmapInitialCapacity(int realCapacity, float loadFactor) 根据真实的元素个数和负载因子,计算 Map 集合合理的容量初始值static <K,V> V[] 获取Map集合中指定的多个键的值,并以数组的形式依次返回。static <K,V> HashMap<K, V> newHashMap(int size) 构造一个可以实际存储指定容量的 HashMapstatic <K> HashSet<K>newHashSet(int size) 构造一个可以实际存储指定容量的 HashSetstatic <E,S extends Collection<E>>
S根据可变参数形式的键值数组构造一个集合static <E> ArrayList<E>ofArrayList(E... elements) 根据可变参数形式的键值数组构造一个 ArrayList 集合static <K,V> HashMap<K, V> 根据可变参数形式的键值数组构造一个 Map 集合static <E> HashSet<E>ofHashSet(E... elements) 根据可变参数形式的键值数组构造一个 HashSet 集合static <E,S extends Set<E>>
SofSet(IntFunction<S> newSet, E... elements) 根据可变参数形式的键值数组构造一个 Set 集合static <E,S extends Collection<E>>
SofSize(IntFunction<S> newList, E... elements) 根据可变参数形式的键值数组构造一个集合static <E,K, V> HashMap<K, V> 将指定的数据集合转为 HashMap 集合static <K,V> HashMap<K, V> 将指定的数据集合转为 HashMap 集合static <E,K, V, M extends Map<K, V>>
MtoMap(IntFunction<M> newMap, Iterable<E> items, Function<? super E, K> keyMapper, Function<? super E, V> valueMapper) 将指定的数据集合转为 Map 集合static <K,V, M extends Map<K, V>>
MtoMap(IntFunction<M> newMap, Iterable<V> items, Function<? super V, K> keyMapper) 将指定的数据集合转为 Map 集合static <K,V, M extends Map<K, V>>
MtoMap(IntFunction<M> newMap, Object... elements) 根据可变参数形式的键值数组构造一个 Map 集合
-
构造器详细资料
-
CollectionUtil
public CollectionUtil()
-
-
方法详细资料
-
checkPairs
-
mapInitialCapacity
public static int mapInitialCapacity(int realCapacity, float loadFactor) 根据真实的元素个数和负载因子,计算 Map 集合合理的容量初始值- 参数:
realCapacity- 真实的元素个数loadFactor- 负载因子
-
mapInitialCapacity
public static int mapInitialCapacity(int realCapacity) 根据真实的元素个数和默认的负载因子,计算 Map 集合合理的容量初始值- 参数:
realCapacity- 真实的元素个数
-
addAll
public static <E> Collection<E> addAll(Collection<E> target, @Nullable Predicate<? super E> filter, E... elements) 将可变参数形式的键值数组添加到一个 Map 集合中- 参数:
target- 指定的 Collection 集合filter- 如果指定了该数组元素过滤器,则只有过滤结果为 true 的才会被添加elements- 可变参数形式的元素数组
-
addAll
将可变参数形式的键值数组添加到一个Map集合中- 参数:
target- 指定的 Collection 集合elements- 可变参数形式的元素数组
-
addAll
将可变参数形式的键值数组添加到一个 Map 集合中- 参数:
map- 指定的Map集合kvPairs- 可变参数形式的键值数组,必须是K1, V1, K2, V2, K3, V3...这种形式
-
ofSize
根据可变参数形式的键值数组构造一个集合- 参数:
newList- Collection 构造器,int 类型的参数为 Collection 构造方法的 initialCapacity 参数elements- 可变参数形式的元素数组
-
of
根据可变参数形式的键值数组构造一个集合- 参数:
newList- Collection 构造器elements- 可变参数形式的元素数组
-
ofSet
根据可变参数形式的键值数组构造一个 Set 集合- 参数:
newSet- Set 构造器,int 类型的参数为 Set 构造方法的 initialCapacity 参数elements- 可变参数形式的元素数组
-
ofHashSet
根据可变参数形式的键值数组构造一个 HashSet 集合- 参数:
elements- 可变参数形式的元素数组
-
ofArrayList
根据可变参数形式的键值数组构造一个 ArrayList 集合- 参数:
elements- 可变参数形式的元素数组
-
filter
过滤指定的集合,并返回获得符合条件的新集合- 参数:
c- 指定的集合matcher- 只有经过该过滤器后返回 true 的元素才符合条件- 从以下版本开始:
- 3.10.0
-
toMap
根据可变参数形式的键值数组构造一个 Map 集合- 参数:
newMap- Map 构造器,int 参数为 Map 构造方法的 initialCapacity 参数elements- 可变参数形式的元素数组
-
ofHashMap
根据可变参数形式的键值数组构造一个 Map 集合- 参数:
elements- 可变参数形式的元素数组
-
toMap
public static <E,K, M toMapV, M extends Map<K, V>> (IntFunction<M> newMap, Iterable<E> items, Function<? super E, K> keyMapper, Function<? super E, V> valueMapper) 将指定的数据集合转为 Map 集合- 参数:
newMap- Map 构造器,int 参数为 Map 构造方法的 initialCapacity 参数items- 需要放入 Map 集合的数据集合keyMapper- Map 的Entry.key转换器valueMapper- Map 的Entry.value转换器
-
toHashMap
public static <E,K, HashMap<K,V> V> toHashMap(Iterable<E> items, Function<? super E, K> keyMapper, Function<? super E, V> valueMapper) 将指定的数据集合转为 HashMap 集合- 参数:
items- 需要放入 Map 集合的数据集合keyMapper- Map 的Entry.key转换器valueMapper- Map 的Entry.value转换器
-
newHashMap
构造一个可以实际存储指定容量的 HashMap- 参数:
size- 预期的实际存储容量
-
newHashSet
构造一个可以实际存储指定容量的 HashSet- 参数:
size- 预期的实际存储容量
-
toMap
public static <K,V, M toMapM extends Map<K, V>> (IntFunction<M> newMap, Iterable<V> items, Function<? super V, K> keyMapper) 将指定的数据集合转为 Map 集合- 参数:
newMap- Map 构造器,int 参数为 Map 构造方法的 initialCapacity 参数items- 需要放入 Map 集合的数据集合keyMapper- Map 的Entry.key转换器
-
toHashMap
将指定的数据集合转为 HashMap 集合- 参数:
items- 需要放入 Map 集合的数据集合keyMapper- Map 的Entry.key转换器
-
mapValues
获取Map集合中指定的多个键的值,并以数组的形式依次返回。如果集合中没有指定的键,则数组对应位置的值为null- 参数:
map- 指定的Map集合valueClass- 数组的组件类型keys- 指定的键数组- 从以下版本开始:
- 0.3.1
-
findFirst
遍历集合,并使用指定的过滤器进行检测,返回遍历到的第一个符合条件的元素- 参数:
filter- 如果为 null,则默认为 true- 从以下版本开始:
- 2.8.0
-
getAny
遍历集合,并使用指定的过滤器进行检测,返回遍历到的第一个元素- 从以下版本开始:
- 3.0.0
-
mapField
public static <T,R> R[] mapField(Collection<T> list, Class<R> fieldType, Function<? super T, ? extends R> mapper) 依次将集合中每个元素进行指定的映射,。并返回映射后的数组- 参数:
list- 集合fieldType- 映射后的字段类型mapper- 映射转换器
-