JAVA8——StringJoiner类
在实际开发代码中,我们经常会对多个字符串按指定的分隔符进行拼接,首先想到的是用StringBuilder作字符串拼接,比如:
List<String> list = new ArrayList<>(Arrays.asList("aaa","bbb","ccc"));
/** 用StringBuilder作字符串拼接 */
StringBuilder sb = new StringBuilder();
sb.append("[");
int seq = 1;
for (String s : list) {
sb.append(s);
if (seq++ != list.size()){
sb.append(",");
}
}
sb.append("]");
System.out.println(sb.toString());
代码输出为:[aaa,bbb,ccc]
后来发现了StringJoiner这个类,对字符串拼接非常好用。
简介:StringJoiner是Java8新出的一个类,用于构造由分隔符分隔的字符序列,并可选择性地从提供的前缀开始和以提供的后缀结尾。省的我们开发人员再次通过StringBuffer或者StingBuilder拼接。
对上面的例子进行优化:
List<String> list = new ArrayList<>(Arrays.asList("aaa","bbb","ccc"));
/** 用StringJoiner作字符串拼接 */
StringJoiner sj = new StringJoiner(",", "[", "]"); //分别为:分隔符、前缀、后缀,也可以只传第一个参数分隔符,具体见下文源码分析
for (