阅读(1658) (7)

鸿蒙OS StringJoiner

2022-06-16 16:29:47 更新

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 的当前值的长度