在 java 8 中,java.util包中引入了一个新类StringJoiner。使用这个类,我们可以使用指定的分隔符连接多个字符串,我们还可以在连接多个字符串时为最终字符串提供前缀和后缀。在本教程中,我们将看到几个StringJoiner类的示例,在本指南的最后,我们将看到StringJoiner类的方法。
Java StringJoiner示例 1:通过指定分隔符来连接字符串
在这个例子中,我们使用StringJoiner连接多个字符串。在创建StringJoiner的实例时,我们将分隔符指定为连字符(-)。
import java.util.StringJoiner;public class Example {public static void main(String[] args) {// Passing Hyphen(-) as delimiterStringJoiner mystring = new StringJoiner("-");// Joining multiple strings by using add() methodmystring.add("Logan");mystring.add("Magneto");mystring.add("Rogue");mystring.add("Storm");// Displaying the output StringSystem.out.println(mystring);}}
输出:
Logan-Magneto-Rogue-Storm
Java StringJoiner示例 2:为输出字符串添加前缀和后缀
import java.util.StringJoiner;public class Example {public static void main(String[] args) {/* Passing comma(,) as delimiter and opening bracket* "(" as prefix and closing bracket ")" as suffix*/StringJoiner mystring = new StringJoiner(",", "(", ")");// Joining multiple strings by using add() methodmystring.add("Negan");mystring.add("Rick");mystring.add("Maggie");mystring.add("Daryl");// Displaying the output StringSystem.out.println(mystring);}}
输出:
(Negan,Rick,Maggie,Daryl)
StringJoiner示例 3:合并两个StringJoiner对象
import java.util.StringJoiner;public class Example {public static void main(String[] args) {/* Passing comma(,) as delimiter and opening bracket* "(" as prefix and closing bracket ")" as suffix*/StringJoiner mystring = new StringJoiner(",", "(", ")");mystring.add("Negan");mystring.add("Rick");mystring.add("Maggie");mystring.add("Daryl");System.out.println("First String: "+mystring);/* Passing hyphen(-) as delimiter and string "pre"* as prefix and string "suff" as suffix*/StringJoiner myanotherstring = new StringJoiner("-", "pre", "suff");myanotherstring.add("Sansa");myanotherstring.add("Imp");myanotherstring.add("Jon");myanotherstring.add("Ned");System.out.println("Second String: "+myanotherstring);/* Merging both the strings* The important point to note here is that the output string will be* having the delimiter prefix and suffix of the first string (the string* which is calling the merge method of StringJoiner)*/StringJoiner mergedString = mystring.merge(myanotherstring);System.out.println(mergedString);}}
输出:
First String: (Negan,Rick,Maggie,Daryl)Second String: preSansa-Imp-Jon-Nedsuff(Negan,Rick,Maggie,Daryl,Sansa-Imp-Jon-Ned)
在上面的例子中,我们已经看到了StringJoiner类的add()和merge()方法。让我们看看这个类的其他方法。
StringJoiner示例:setEmptyValue(),length()和toString()方法
import java.util.StringJoiner;public class Example {public static void main(String[] args) {//Comma(,) as delimiterStringJoiner mystring = new StringJoiner(",");/* Using setEmptyValue() method, we can set the default value* of a StringJoiner instance, so if the StringJoiner is empty* and we print the value of it, this default value will be* displayed*/mystring.setEmptyValue("This is a default String");/* We have not added any string to StringJoiner yet so* this should display the default value of StringJoiner*/System.out.println("Default String: "+mystring);// Adding strings to StringJoinermystring.add("Apple");mystring.add("Banana");mystring.add("Orange");mystring.add("Kiwi");mystring.add("Grapes");System.out.println(mystring);/* The length() method of StringJoiner class returns the* length of the string (the number of characters in the* StringJoiner instance)*/int length = mystring.length();System.out.println("Length of the StringJoiner: "+length);/* The toString() method is used for converting a StringJoiner* instance to a String.*/String s = mystring.toString();System.out.println(s);}}
输出:
Default String: This is a default StringApple,Banana,Orange,Kiwi,GrapesLength of the StringJoiner: 31Apple,Banana,Orange,Kiwi,Grapes
参考文献:
