解释 Java 8 中的 StringJoiner?


自从 Java 8 引入 **StringJoiner** 类以来,您可以使用它构建由所需分隔符分隔的字符序列。

序号构造函数及描述
1StringJoiner(CharSequence delimiter)
此构造函数创建一个空的(无字符)StringJoiner,仅包含指定分隔符的副本。
2StringJoiner(CharSequence delimiter, CharSequence prefix, CharSequence suffix)
此构造函数创建一个不包含字符的 StringJoiner。

StringJoiner 类的 方法

**add()** − 此方法接受一个 **CharacterSequence** 对象(片段、字符串、StringBuffer、StringBuilder)并将其添加到当前的 Joiner,在构造时使用分隔符分隔前后元素(如果有)。

示例

import java.util.StringJoiner;
public class StringJoinerExample {
   public static void main(String args[]) {
      StringJoiner joiner = new StringJoiner(" ");
      joiner.add("Hello");
      joiner.add("how");
      joiner.add("are");
      joiner.add("you");
      System.out.println(joiner);
   }
}

输出

Hello how are you

**length()** − 此方法返回当前 Joiner 的长度,即其中包含的字符数,包括分隔符。

示例

import java.util.StringJoiner;
public class StringJoinerExample {
   public static void main(String args[]) {
      StringJoiner joiner = new StringJoiner(" ");
      joiner.add("Hello");
      joiner.add("how");
      joiner.add("are");
      joiner.add("you");
      System.out.println("Contents: "+joiner);
      System.out.println("length: "+joiner.length());
   }
}

输出

Contents: Hello how are you
length: 17

**merge()** − 此方法接受一个 StringJoiner 对象,将其添加到当前对象并返回结果 StringJoiner 对象。

示例

import java.util.StringJoiner;
public class StringJoinerExample {
   public static void main(String args[]) {
      StringJoiner joiner1 = new StringJoiner(" ");
      joiner1.add("Hello");
      joiner1.add("how");
      joiner1.add("are");
      joiner1.add("you");
      StringJoiner joiner2 = new StringJoiner(" ");
      joiner2.add("Welcome");
      joiner2.add("to");
      joiner2.add("Tutorialspoint");
      StringJoiner result = joiner1.merge(joiner2);
      System.out.println("Contents: "+result);
   }
}

输出

Contents: Hello how are you Welcome to Tutorialspoint

**setEmptyValue()** − 此方法接受一个 CharacterSequence 对象作为参数,并将其设置为当前 StringJoiner 对象的空字符串值,即如果未向 StringJoiner 对象添加任何元素,如果您打印其内容,则将显示使用此方法设置的值。简而言之,一旦您在 StringJoiner 对象上调用此方法,它将永远不被视为为空。

示例

import java.util.StringJoiner;
public class StringJoinerExample {
   public static void main(String args[]) {
      StringJoiner joiner = new StringJoiner(" ");
      joiner.setEmptyValue("sample empty value");
      System.out.println(joiner);
   }
}

输出

sample empty value

**toString()** − 此方法将当前 StringJoiner 的内容作为 Sting 对象返回。

import java.util.StringJoiner;
public class StringJoinerExample {
   public static void main(String args[]) {
      StringJoiner joiner = new StringJoiner(" ");
      joiner.add("Hello");
      joiner.add("how");
      joiner.add("are");
      joiner.add("you");
      String value = joiner.toString();
      System.out.println(value);
   }
}

输出

Hello how are you

更新时间: 2019年10月10日

106 次浏览

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告