public final class CollHelper extends Object
| 限定符和类型 | 方法和说明 |
|---|---|
static <T> List<T> |
addAll(List<T>... values)
添加 多个List
|
static <T> Set<T> |
addAll(Set<T>... values)
添加 多个Set
|
static <T> Set<T> |
addAllListToSet(List<T>... values)
添加 多个List 并返回Set
|
static <T> List<T> |
addAllUnique(List<T>... values)
添加 多个List 并去重
|
static <E> List<E> |
asList(E... elements) |
static <E> Set<E> |
asSet(E... elements) |
static int |
computeListCapacity(int arraySize) |
static Map<String,String> |
getMap(BaseEnum[] list)
将制定的枚举集合转成 map
key -> name
value -> desc
|
static int |
initialCapacity(int size)
计算map 初始容量
|
static int |
initialCapacity(int size,
float loadFactor)
计算map 初始容量
|
static <K,V> Map<V,K> |
inverse(Map<K,V> map)
转换 Map 的 K 和 V
|
static <K,V,M> com.google.common.collect.Multimap<K,M> |
iterableToMultiMap(Iterable<V> values,
Function<? super V,K> keyFunction,
Function<? super V,M> valueFunction)
一个key 对应多个值的map
结构: key -> [value1, value2, ...]
|
static Map<String,Set<String>> |
putAll(Map<String,Set<String>>... items) |
static <T> List<String> |
split(Collection<String> list,
CharSequence separator)
按照分隔符切割list
|
static <T> List<String> |
split(Collection<T> list,
Function<? super T,?> function,
CharSequence separator)
按照分隔符切割list
|
static <K,V,M> com.google.common.collect.ImmutableMap<K,M> |
uniqueIndex(Iterable<V> values,
Function<? super V,K> keyFunction,
Function<? super V,M> valueFunction)
增强 guava 的 Maps.uniqueIndex方法
guava 的 Maps.uniqueIndex方法可以实现:
将 list<V> 转成 Map<K , V> K 需要自己指定, V不能指定 本方法实现了: 将 list<V> 转成 Map<K , M> K 需要自己指定, M需要自己指定 其中K不能重复,若重复,则会报错 |
public static Map<String,String> getMap(BaseEnum[] list)
list - public static <K,V,M> com.google.common.collect.ImmutableMap<K,M> uniqueIndex(Iterable<V> values, Function<? super V,K> keyFunction, Function<? super V,M> valueFunction)
guava 的 Maps.uniqueIndex方法可以实现:
将 list<V> 转成 Map<K , V>
K 需要自己指定, V不能指定
本方法实现了:
将 list<V> 转成 Map<K , M> K 需要自己指定, M需要自己指定
其中K不能重复,若重复,则会报错
K - 转换后Map的键 类型V - 转换前Iterable的迭代类型M - 转换后Map的值 类型values - 需要转换的集合 可以是任何实现了 Iterable 接口的集合(如List, Set, Collection)keyFunction - 转换后Map的键的转换方式valueFunction - 转换后Map的值的转换方式public static <K,V,M> com.google.common.collect.Multimap<K,M> iterableToMultiMap(Iterable<V> values, Function<? super V,K> keyFunction, Function<? super V,M> valueFunction)
K - 转换后Map的键 类型V - 转换前Iterable的迭代类型M - 转换后Map的值 类型values - 需要转换的集合 可以是任何实现了 Iterable 接口的集合(如List, Set, Collection)keyFunction - 转换后Map的键的转换方式valueFunction - 转换后Map的值的转换方式public static int initialCapacity(int size,
float loadFactor)
size - 已知数量loadFactor - 加载因子public static int initialCapacity(int size)
size - 已知数量public static <T> List<String> split(Collection<T> list, Function<? super T,?> function, CharSequence separator)
list - 集合function - 转换器separator - 分隔符public static <T> List<String> split(Collection<String> list, CharSequence separator)
list - 集合separator - 分隔符public static <E> List<E> asList(E... elements)
public static <E> Set<E> asSet(E... elements)
public static int computeListCapacity(int arraySize)
public static <T> List<T> addAllUnique(List<T>... values)
T - values - 集合Copyright © 2022. All rights reserved.