In java 8, introduced a new class StringJoiner to join more than one strings with the specified delimiter. This class also provides prefix and suffix to the final delimited String. We can also set default text value if no values added for string joined.
Constructors
- StringJoiner(CharSequence delimiter): Constructs a StringJoiner with a delimiter, with no prefix or suffix.
- StringJoiner(CharSequence delimiter, CharSequence prefix, CharSequence suffix): Constructs a StringJoiner with delimiter on values and add prefix and suffix on the final value.
Example 1: StringJoiner with delimiter (:)
Here in this example defined StringJoiner with a delimiter (:) to separate values, use StringJoiner.setEmptyValue() method to default value if not data added. Use StringJoiner.add() method to add values on StringJoiner.
import java.util.StringJoiner; public class StringJoinerExample { public static void main(String[] args) { // Passing Hyphen(:) as delimiter StringJoiner myFriends = new StringJoiner(":"); myFriends.setEmptyValue("No Friends Found"); System.out.println("Friends Detail : When no data added"); System.out.println(myFriends); // Joining multiple strings by using add() method myFriends.add("Saurabh"); myFriends.add("Gaurav"); myFriends.add("Raghav"); myFriends.add("Shailesh"); myFriends.add("Ankur"); System.out.println("Friends Detail : After data added"); // Displaying the output String with delimiter : System.out.println(myFriends); } }
Output
Friends Detail : When no data added
No Friends Found
Friends Detail : After data added
Saurabh:Gaurav:Raghav:Shailesh:Ankur
Example 2: StringJoiner with a delimiter (:), prefix, and suffix
In this example, defined StringJoiner with a delimiter for values, prefix, and suffix for final delimited String.
import java.util.StringJoiner; public class StringJoinerPrefixSuffixExample { public static void main(String[] args) { // Passing colon (:) as delimiter , prefix ({) and suffix (}) StringJoiner myFriends = new StringJoiner(":","{","}"); myFriends.setEmptyValue("No Friends Found"); System.out.println("Friends Detail : When no data added"); System.out.println("Friends Detail :"+myFriends); // Joining multiple strings by using add() method myFriends.add("Saurabh"); myFriends.add("Gaurav"); myFriends.add("Raghav"); myFriends.add("Shailesh"); myFriends.add("Ankur"); System.out.println("Friends Detail : After data added"); // Displaying the output String with delimiter : System.out.println(myFriends); } }
Output
Friends Detail : When no data added
Friends Detail :No Friends Found
Friends Detail : After data added
{Saurabh:Gaurav:Raghav:Shailesh:Ankur}
Example 3: Merge StringJoiner 1 with a delimiter (:), StringJoiner 2 with a delimiter (,)
We can use StringJoiner.merge() method to merge the values of two StringJoiner. Here also use StringJoiner.length() method which returns the length of the final delimited String.
import java.util.StringJoiner; public class StringJoinerMergeExample { public static void main(String[] args) { // Passing Hyphen(:) as delimiter StringJoiner myFriends = new StringJoiner(":"); // Joining multiple strings by using add() method myFriends.add("Saurabh"); myFriends.add("Gaurav"); myFriends.add("Raghav"); myFriends.add("Shailesh"); myFriends.add("Ankur"); System.out.println("Friends Detail 1: After data added"); // Displaying the output String with delimiter : System.out.println(myFriends); // Passing Hyphen(:) as delimiter StringJoiner myFriends1 = new StringJoiner(","); // Joining multiple strings by using add() method myFriends1.add("Saurabh1"); myFriends1.add("Gaurav1"); myFriends1.add("Raghav1"); myFriends1.add("Shailesh1"); myFriends1.add("Ankur1"); System.out.println("Friends Detail 2: After data added"); // Displaying the output String with delimiter : System.out.println(myFriends1); //Merge StringJoiner myFriends1.merge(myFriends); System.out.println("Result after merge Friends Detail 1 & 2:"); System.out.println(myFriends1); //Length of String Joiner System.out.println(myFriends1.length()); } }
Output
Friends Detail 1: After data added
Saurabh:Gaurav:Raghav:Shailesh:Ankur
Friends Detail 2: After data added
Saurabh1,Gaurav1,Raghav1,Shailesh1,Ankur1
Result after merge Friends Detail 1 & 2:
Saurabh1,Gaurav1,Raghav1,Shailesh1,Ankur1,Saurabh:Gaurav:Raghav:Shailesh:Ankur
78
You must log in to post a comment.