Java8中的Java.util.StringJoiner
Posted MrAit
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java8中的Java.util.StringJoiner相关的知识,希望对你有一定的参考价值。
[
??Java 字符串
]Java8中的Java.util.StringJoiner
StringJoiner是java.util包中的一个类,用于构造一个由分隔符分隔的字符序列(可选),并且可以从提供的前缀开始并以提供的后缀结尾。虽然这也可以在StringBuilder类的帮助下在每个字符串之后附加分隔符,但StringJoiner提供了简单的方法来实现,而无需编写大量代码。
StringJoiner构造函数:
- StringJoiner(CharSequence delimiter):构造一个StringJoiner,其中没有字符,没有前缀或后缀,并提供一个提供的分隔符的副本。
Syntax : public StringJoiner(CharSequence delimiter) Parameters : delimiter - the sequence of characters to be used between each element added to the StringJoiner value Throws: NullPointerException - if delimiter is null
- StringJoiner(CharSequence分隔符,CharSequence前缀,CharSequence后缀):构造一个StringJoiner,其中没有字符,没有前缀或后缀,以及提供的分隔符的副本。
Syntax : public StringJoiner(CharSequence delimiter, CharSequence prefix, CharSequence suffix) Parameters : delimiter - the sequence of characters to be used between each element added to the StringJoiner value prefix - the sequence of characters to be used at the beginning suffix - the sequence of characters to be used at the end Throws: NullPointerException - if prefix, delimiter, or suffix is null
方法:在StringJoiner类中有5个方法。
- String toString():此方法返回此StringJoiner的String对象。
Syntax : public String toString() Parameters : NA Returns : the string representation of this StringJoiner Overrides : toString in class Object
- StringJoiner add(CharSequence newElement):此方法将给定的CharSequence值的副本添加为StringJoiner值的下一个元素。如果newElement为null,则添加“null”。
Syntax : public StringJoiner add(CharSequence newElement) Parameters : newElement - The element to add Returns : a reference to this StringJoiner
- StringJoiner merge(StringJoiner other):如果给定的StringJoiner不带前缀和后缀,则将其作为下一个元素添加,如果它不为空。如果给定的StringJoiner为空,则调用不起作用。如果另一个StringJoiner使用不同的分隔符,则来自另一个StringJoiner的元素与该分隔符连接,并且结果作为单个元素附加到此StringJoiner。
Syntax : public StringJoiner merge(StringJoiner other) Parameters : other - The StringJoiner whose contents should be merged into this one Returns : This StringJoiner Throws : NullPointerException - if the other StringJoiner is null
- int length():此方法返回此StringJoiner的字符串表示的长度。
Syntax : public int length() Parameters : NA Returns : This StringJoiner
- StringJoiner setEmptyValue(CharSequence emptyValue):该方法设置要在确定此StringJoiner的字符串表示形式时使用的字符串,并且尚未添加任何元素,即其为空时。
Syntax : public StringJoiner setEmptyValue(CharSequence emptyValue) Parameters : emptyValue - the characters to return as the value of an empty StringJoiner Returns : this StringJoiner itself so the calls may be chained Throws: NullPointerException - when the emptyValue parameter is null
下面是演示所有方法的java程序。
// Java program to demonstrate methods // of StringJoiner class ? import java.util.ArrayList; import java.util.StringJoiner; ????? public class Test2 { ????public static void main(String[] args) ????{ ???????ArrayList<String> al = new ArrayList<>(); ???????? ???????al.add("Ram"); ???????al.add("Shyam"); ???????al.add("Alice"); ???????al.add("Bob"); ???????? ???????StringJoiner sj1 = new StringJoiner(","); ???????? ???????// setEmptyValue() method ???????sj1.setEmptyValue("sj1 is empty"); ???????System.out.println(sj1); ???????? ???????// add() method ???????sj1.add(al.get(0)).add(al.get(1)); ???????System.out.println(sj1); ???????? ???????// length() method ???????System.out.println("Length of sj1 : " + sj1.length()); ???????? ???????StringJoiner sj2 = new StringJoiner(":"); ???????sj2.add(al.get(2)).add(al.get(3)); ???????? ???????//merge() method ???????sj1.merge(sj2); ???????? ???????// toString() method ???????System.out.println(sj1.toString()); ???????? ???????System.out.println("Length of new sj1 : " + sj1.length()); ????? ????} }
输出:
sj1 is empty Ram,Shyam Length of sj1 : 9 Ram,Shyam,Alice:Bob Length of new sj1 : 19??Java 字符串
以上是关于Java8中的Java.util.StringJoiner的主要内容,如果未能解决你的问题,请参考以下文章