今天在实际开发中遇到一个需求,我简单描述下
给定n个字符串:str1 str2 str3 str4....,用指定分割符(比如逗号,)拼接,拼接输出结果示例
str1,str2,str3,str4.....
如果是自己动手的话,需要使用StringBuilder进行多次append操作。好在Java8提供了这样的工具类来满足这样的需求。这个工具类就是StringJoiner
使用StringJoiner解决该需求,代码如下
public class SJTest {
@Test
public void testSJ1() {
StringJoiner stringJoiner = new StringJoiner(",");
stringJoiner.add("张三").add("李四");
System.out.println(stringJoiner.toString());
}
}
输出结果
张三,李四
StringJoiner简介
构造方法
public StringJoiner(CharSequence delimiter);
public StringJoiner(CharSequence delimiter,
CharSequence prefix,
CharSequence suffix);
- 一个参数的构造方法,传入一个分隔符,字符串拼接就是按照指定的分隔符拼接。
- 三个参数的构造方法,除了传入分隔符外,还要传入前缀和后缀,用于拼接到整体字符串的首尾。示例如下
@Test
public void testSJ2() {
StringJoiner stringJoiner = new StringJoiner("|", "(", ")");
stringJoiner.add("张三").add("李四");
System.out.println(stringJoiner.toString());
}
输出结果:
(张三|李四)
常用方法
- add方法,用于添加字符串到
StringJoiner中 - toString方法,用于打印字符串结果,字符串格式为:
<前缀>[字符串<分隔符>字符串...]<后缀>