Java 集合快速转换
StringUtils用的Spring-Core内的工具类
1.集合转换到逗号的字符串
StringUtils.collectionToCommaDelimitedString(Collection<?> coll)
2.集合转换指定分隔符的字符串
StringUtils.collectionToDelimitedString(Collection<?> coll, String delim)
3.array数组快速转换为list集合
Arrays.asList(new String[]{"123", "456"});
4.list集合快速转换为set集合 Lists.newArrayList()需要用google的guava工具包 等同于 new ArrayList()
Set<Object> sourcesSet = new LinkedHashSet<Object>();
sources.addAll(Lists.newArrayList());
//sources.addAll(Arrays.asList(new String[]{"123", "456"}));
//或者
Set<Object> sourcesSet = new LinkedHashSet<Object>(Lists.newArrayList());
4.1 set集合转换为list集合 **** 主要用于list去重再转list操作
List<Object> list1 = new LinkedList<>(new LinkedHashSet<>(list));
5.list集合快速转换为数组
list.toArray(new String[0]); //限制List的泛型必须是单一对象
6.带逗号的字符串转换为数组
String[] idsArray = ids.split(",");
7.数组转换为自定义符号的字符串
StringUtils.arrayToDelimitedString(Object[] arr, String delim);
8.数组转换为带逗号的字符串
StringUtils.arrayToDelimitedString(Object[] arr);
9.数组转换为带符号的字符串(Guava) delim为自定义符号
Joiner.on(delim).join(new String[]{"a", "b", "c"});
10.String不定参数转换为带符号的字符串(Guava) delim为自定义符号
Joiner.on(delim).join("a", "b", "c");
11.Iterable集合转换为带符号的字符串(Guava) delim为自定义符号
Joiner.on(delim).join(Arrays.asList(numberArray).iterator());
11.带符号的字符串转换为Iterable集合(Guava) delim为自定义符号
Splitter.on(delim).split(ids);
12.带符号的字符串转换为array数组(common-lang3) StringUtils为lang3包内工具类 非Spring工具类
StringUtils.split(numberList, delim);
13.不定参数转换为list集合
Arrays.asList("a", "b", "c");
14.字符串转换逗号分割的数组
StringUtils.commaDelimitedListToStringArray(String str);
15.字符串转换指定符号分割的数组
StringUtils.commaDelimitedListToStringArray(String str, String delim);
16.字符串转换Set集合
StringUtils.commaDelimitedListToSet(String str);
17.集合转换指定字符串
StringUtils.collectionToDelimitedString(Collection collection, String delim);
18.集合转换指定字符串,可拼接前缀和后缀
StringUtils.collectionToDelimitedString(Collection collection, String delim, String prefix, String suffix);
跳过null值
Joiner.on(separator).skipNulls().join(parts);
替换null值
Joiner.on(separator).useForNull(nullText).join(parts);
去掉length=0的值
Splitter.on(separator).omitEmptyStrings().split(sequence);