List转变为逗号分隔的String(Java7和Java8分别实现)
短信预约 -IT技能 免费直播动态提醒
需求:Arrays.asList("AA", "BB") --> "AA,BB"
In Java 8
采用stream的方式
List<String> strList = Arrays.asList("AA", "BB", "CC");
String newStr = strList.stream().collect(Collectors.joining(","));
System.out.println("Output:" + newStr); // Output:AA,BB,CC
使用String.join()函数,给函数传递一个分隔符合一个迭代器,StringJoiner对象会帮助我们完成所有的事情
String newStr = String.join(",", strList);
System.out.println("Output:" + newStr); // Output:AA,BB,CC
In Java 7
Java 7的实现方法
List<String> strList = Arrays.asList("AA", "BB", "CC");
StringBuilder sb = new StringBuilder();
for (int i = 0; i < strList.size(); i++) {
if (i != 0) {
sb.append(",");
}
sb.append(strList.get(i));
}
System.out.println("Output:" + sb.toString()); // Output:AA,BB,CC
list和以逗号分割的String相互转换(guava)
import com.alibaba.fastjson.JSON;
import com.google.common.base.Joiner;
import com.google.common.collect.Lists;
import com.google.common.base.Splitter;
List<String> list = Lists.newArrayList("a","b","c"," ");
String s = Joiner.on(",").join(list); // 以逗号分割
System.out.println(s); // a,b,c,
Splitter split = Splitter.on(',').trimResults().omitEmptyStrings(); // 去前后空格&&去空string
List<String> list1 = split.splitToList(s);
System.out.println(JSON.toJSONString(list1)); // ["a","b","c"]
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341