StringJoiner trong java 8 với ví dụ cụ thể

StringJoiner được giới thiệu trong java 8, nó được sử dụng để xây dựng một chuỗi được phân tách bằng dấu phân cách(tuỳ ý) và gán trị bắt đầu và kết thúc của chuỗi bằng prefix và suffix tuỳ ý. 

Constructor StringJoiner

StringJoiner(CharSequence delimiter) : Khởi tạo một StringJoiner rỗng, không có prefix(bắt đầu chuỗi) và suffĩ(kết thúc chuỗi) và có chuỗi ký tự phân cách delimiter.

 StringJoiner str = new StringJoiner(" - ");
 str.add("1");
 str.add("2");
 System.out.println(str); // "1 - 2"

StringJoiner(CharSequence delimiter,CharSequence prefix,CharSequence suffix) : Khởi tạo StringJoiner rỗng với chuỗi phân cách delimiter và bắt đầu bằng prefix, kết thúc bằng suffix.

StringJoiner str = new StringJoiner(" - ", "*", ".");
str.add("1");
str.add("2");
System.out.println(str); "*1 - 2."

StringJoiner methods

1, String toString(): Trả về chuỗi của StringJoiner

2, StringJoiner add(CharSequence newElement): Thêm newElement vào cuối StringJoiner.

3, StringJoiner merge(StringJoiner other): Nối nội dung của StringJoiner ohter vào StringJoiner hiện tại(không lấy prefix và suffix). 

4, int length(): Trả về số lượng ký tự của StringJoiner(bao gồm cả dấu phân cách, prefix và suffix.

5, StringJoiner setEmptyValue(CharSequence emptyValue):Gán giá emptyValue cho StringJoiner khi nó chưa có bất kỳ phần tử nào được thêm vào.

import java.util.ArrayList;
import java.util.StringJoiner;

public class Main {

    public static void main(String[] args) {
        ArrayList<String> al = new ArrayList<>();

        al.add("Hai");
        al.add("Ha");
        al.add("Trung");
        al.add("Quan");

        StringJoiner sj1 = new StringJoiner(",");

        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());

    }
}

Output:

sj1 is empty
Hai,Ha
Length of sj1 : 6
Hai,Ha,Trung:Quan
Length of new sj1 : 17

0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x