经常需要用到将字符串列表转换为字符串,或者将字符串转换为字符串列表,今天总结一下:
目录
1.将逗号分隔的字符串转换为List
String str = "a,b,c";
List<String> result = Arrays.asList(str.split(","));
2.将List转换为以逗号分割的字符串
2.1 字符串拼接法
方法一:无论是否为最后一个元素,一直追加分隔符,最后去掉最后一个分隔符。
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);
}
方法二:判断是否为最后一个元素,若是不加入分隔符。
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();
}
2.2 调用jar包
方法一:利用apache的StringUtils:
public String listToString(List list, char separator) {
return org.apache.commons.lang.StringUtils.join(list.toArray(),separator);
}
方法二: 利用利用Guava的Joiner:
List<String> list = new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
String str = Joiner.on(",").join(list);