
将逗号分隔的字符串转换为List
方法 1: 利用JDK的Arrays类
1 2
|
String str = "a,b,c"; List<String> result = Arrays.asList(str.split(","));
|
方法 2: 利用Guava的Splitter
1 2
|
String str = "a, b, c"; List<String> result = Splitter.on(",").trimResults().splitToList(str);
|
方法 3: 利用Apache Commons的StringUtils (只是用了split)
1 2
|
String str = "a,b,c"; List<String> result = Arrays.asList(StringUtils.split(str,","));
|
方法 4: 利用Spring Framework的StringUtils
1 2
|
String str = "a,b,c"; List<String> str = Arrays.asList(StringUtils.commaDelimitedListToStringArray(str));
|
将List转换为逗号分隔符
方法 1: 不用工具类
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
public String listToString(List list, char separator) { StringBuilder sb = new StringBuilder(); for (int i = 0; i < list.size(); i++) { if (i == list.size() - 1) { sb.append(list.get(i)); } else { sb.append(list.get(i)); sb.append(separator); } } return sb.toString(); } public String listToString(List list, char separator) { StringBuilder sb = new StringBuilder(); for (int i = 0; i < list.size(); i++) { sb.append(list.get(i)).append(separator); } return sb.toString().substring(0,sb.toString().length()-1); }
|
方法 2: 利用Guava的Joiner
1 2 3 4 5
|
List<String> list = new ArrayList<String>(); list.add("a"); list.add("b"); list.add("c"); String str = Joiner.on(",").join(list);
|
方法 3: 利用Apache Commons的StringUtils
1 2 3 4 5
|
List<String> list = new ArrayList<String>(); list.add("a"); list.add("b"); list.add("c"); String str = StringUtils.join(list.toArray(), ",");
|
方法 4:利用Spring Framework的StringUtils
1 2 3 4 5
|
List<String> list = new ArrayList<String>(); list.add("a"); list.add("b"); list.add("c"); String str = StringUtils.collectionToDelimitedString(list, ",");
|
比较下来,我的观点就是Guava库和StringUtils更灵活,适用面更广。
近期评论