📅  最后修改于: 2020-03-25 05:26:15             🧑  作者: Mango
StringJoiner是java.util包中的类,用于构造由定界符分隔的字符(字符串)序列,并可选地以提供的前缀开头和提供的后缀结尾。尽管这也可以通过StringBuilder类的帮助在每个字符串后附加定界符来完成,但是StringJoiner提供了一种简便的方法来完成此任务,而无需编写太多代码。
构造函数:
语法 :
public StringJoiner(CharSequence delimiter)
参数 :
delimiter - 字符序列
报错:
NullPointerException - 如果delimiter为null
语法 :
public StringJoiner(CharSequence delimiter,
CharSequence prefix, CharSequence suffix)
参数 :
delimiter - 分隔符
prefix - 前缀
suffix - 后缀
报错:
NullPointerException - 如果 prefix, delimiter, 或suffix为null
方法: StringJoiner类中有5个方法。
语法 :
public String toString()
参数 :
NA
返回 :
StringJoiner的string对象
重写 :
Object类的toString
语法 :
public StringJoiner add(CharSequence newElement)
参数 :
newElement - 待添加元素
返回 :
新StringJoiner的引用
语法 :
public StringJoiner merge(StringJoiner other)
参数 :
other - StringJoiner,待添加元素
返回 :
StringJoiner
报错 :
NullPointerException - 如果other为null
语法 :
public int length()
参数 :
NA
返回 :
此StringJoiner的String表示形式的长度
语法 :
public StringJoiner setEmptyValue(CharSequence emptyValue)
参数 :
emptyValue - 需要设定的值
返回 :
StringJoiner
报错:
NullPointerException - emptyValue为null
以下是演示所有方法的Java程序。
// Java展示如何使用StringJoiner类
import java.util.ArrayList;
import java.util.StringJoiner;
public class Test2
{
public static void main(String[] args)
{
ArrayList al = new ArrayList<>();
al.add("Ram");
al.add("Shyam");
al.add("Alice");
al.add("Bob");
StringJoiner sj1 = new StringJoiner(",");
// setEmptyValue() 方法
sj1.setEmptyValue("sj1是空的");
System.out.println(sj1);
// add() 方法
sj1.add(al.get(0)).add(al.get(1));
System.out.println(sj1);
// length() 方法
System.out.println("sj1长度 : " + sj1.length());
StringJoiner sj2 = new StringJoiner(":");
sj2.add(al.get(2)).add(al.get(3));
//merge() 方法
sj1.merge(sj2);
// toString() 方法
System.out.println(sj1.toString());
System.out.println("新sj1长度 : " + sj1.length());
}
}
输出:
sj1是空的
Ram,Shyam
sj1长度 : 9
Ram,Shyam,Alice:Bob
新sj1长度 : 19