StringJoiner
java.lang.Object
|—java.util.StringJoiner
public final class StringJoiner
extends Object
StringJoiner 用于构造由分隔符分隔的字符序列,并且可以选择以提供的前缀开头并以提供的后缀结尾。
在向 StringJoiner 添加内容之前,它的 sj.toString() 方法将默认返回前缀 + 后缀。 但是,如果调用 setEmptyValue 方法,则将返回提供的 emptyValue。 例如,当使用集合表示法创建一个字符串以指示一个空集合时,即“{}”,其中前缀是“{”,后缀是“}”并且没有任何内容添加到 StringJoiner 时,可以使用它。
构造函数摘要
构造函数 | 描述 |
---|---|
StringJoiner(CharSequence delimiter) | 构造一个其中没有字符、没有前缀或后缀的 StringJoiner,以及提供的分隔符的副本。 |
StringJoiner(CharSequence delimiter, CharSequence prefix, CharSequence suffix) | 使用提供的前缀、分隔符和后缀的副本构造一个其中没有字符的 StringJoiner。 |
方法总结
修饰符和类型 | 方法 | 描述 |
---|---|---|
StringJoiner | add(CharSequence newElement) | 添加给定 CharSequence 值的副本作为 StringJoiner 值的下一个元素。 |
int | length() | 返回此 StringJoiner 的字符串表示形式的长度。 |
StringJoiner | merge(StringJoiner other) | 如果给定的 StringJoiner 不为空,则添加不带前缀和后缀的内容作为下一个元素。 |
StringJoiner | setEmptyValue(CharSequence emptyValue) | 设置在确定此 StringJoiner 的字符串表示且尚未添加任何元素(即为空时)时要使用的字符序列。 |
String | toString() | 返回当前值,由前缀、到目前为止添加的由分隔符分隔的值和后缀组成,除非没有添加任何元素,在这种情况下,返回前缀 + 后缀或 emptyValue 字符 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
构造函数详细信息
StringJoiner
public StringJoiner(CharSequence delimiter)
构造一个其中没有字符、没有前缀或后缀的 StringJoiner,以及提供的分隔符的副本。 如果没有字符被添加到 StringJoiner 并且调用访问它的值的方法,它将不会在结果中返回前缀或后缀(或其属性),除非首先调用了 setEmptyValue。
参数:
参数名称 | 参数描述 |
---|---|
delimiter | 添加到 StringJoiner 值的每个元素之间要使用的字符序列 |
Throws:
Throw名称 | Throw描述 |
---|---|
NullPointerException | 如果分隔符为空 |
StringJoiner
public StringJoiner(CharSequence delimiter, CharSequence prefix, CharSequence suffix)
使用提供的前缀、分隔符和后缀的副本构造一个其中没有字符的 StringJoiner。 如果没有字符被添加到 StringJoiner 并且调用了访问它的字符串值的方法,它将在结果中返回前缀 + 后缀(或其属性),除非首先调用了 setEmptyValue。
参数:
参数名称 | 参数描述 |
---|---|
delimiter | 添加到 StringJoiner 的每个元素之间要使用的字符序列 |
prefix | 开头使用的字符序列 |
suffix | 最后要使用的字符序列 |
Throws:
Throw名称 | Throw描述 |
---|---|
NullPointerException | 如果前缀、分隔符或后缀为空 |
方法详情
setEmptyValue
public StringJoiner setEmptyValue(CharSequence emptyValue)
设置在确定此 StringJoiner 的字符串表示且尚未添加任何元素(即为空时)时要使用的字符序列。 为此目的制作了一个emptyValue 参数的副本。 请注意,一旦调用了 add 方法,即使添加的元素对应于空字符串,StringJoiner 也不再被视为空。
参数:
参数名称 | 参数描述 |
---|---|
emptyValue | 作为空 StringJoiner 的值返回的字符 |
返回:
这个 StringJoiner 本身,所以调用可能会被链接
Throws:
Throw名称 | Throw描述 |
---|---|
NullPointerException | 当 emptyValue 参数为 null |
toString
public String toString()
返回当前值,由前缀、到目前为止添加的由分隔符分隔的值和后缀组成,除非没有添加任何元素,在这种情况下,返回前缀 + 后缀或 emptyValue 字符
覆盖:
类 Object 中的 toString
返回:
此 StringJoiner 的字符串表示形式
add
public StringJoiner add(CharSequence newElement)
添加给定 CharSequence 值的副本作为 StringJoiner 值的下一个元素。 如果 newElement 为 null,则添加“null”。
参数:
参数名称 | 参数描述 |
---|---|
newElement | 要添加的元素 |
返回:
对此 StringJoiner 的引用
merge
public StringJoiner merge(StringJoiner other)
如果给定的 StringJoiner 不为空,则添加不带前缀和后缀的内容作为下一个元素。 如果给定的 StringJoiner 为空,则调用无效。
如果从未调用过 add(),并且从未使用非空 StringJoiner 参数调用过 merge(),则 StringJoiner 为空。
如果另一个 StringJoiner 使用不同的定界符,则来自另一个 StringJoiner 的元素与该定界符连接,并将结果作为单个元素附加到此 StringJoiner。
参数:
参数名称 | 参数描述 |
---|---|
other | 内容应该合并到这个的 StringJoiner |
返回:
这个 StringJoiner
Throws:
Throw名称 | Throw描述 |
---|---|
NullPointerException | 如果另一个 StringJoiner 为空 |
length
public int length()
返回此 StringJoiner 的字符串表示形式的长度。 请注意,如果未调用任何 add 方法,则将返回字符串表示的长度(前缀 + 后缀或空值)。 该值应等同于 toString().length()。
返回:
StringJoiner 的当前值的长度