Lớp StringBuilder trong java

Tổng quan

Lớp StringBuilder trong java

Trong java, lớp StringBuilder được sử dụng để tạo chuỗi có thể thay đổi (mutable). Lớp StringBuilder trong java tương tự như lớp StringBuffer ngoại trừ nó không đồng bộ(non-synchronized).

Các Constructor quan trọng của lớp StringBuilder trong java

  1. StringBuilder(): Tạo ra một Builder chuỗi với dung lượng ban đầu là 16.
  2. StringBuilder(String str): Tạo ra một Builder chuỗi với chuỗi cụ thể.
  3. StringBuilder(int capacity): Tạo ra một Builder chuỗi với dung lượng được chỉ định như độ dài chuỗi.

Tham khảo khoá học lập trình Web trong vòng 6 tháng, đảm bảo 100% công việc đầu ra!

Các phương thức của lớp StringBuilder trong java

  1. public StringBuilder append(String s): được sử dụng để nối thêm các chuỗi được chỉ định với chuỗi này. Các phương thức append() được nạp chồng như append(char), append(boolean), append(int), append(float), append(double), …
  2. public StringBuilder insert(int offset, String s): được sử dụng để chèn chuỗi chỉ định với chuỗi này tại vị trí quy định. Các phương thức insert() được nạp chồng như insert(int, char), insert(int, boolean), insert(int, int), insert(int, float), insert(int, double), …
  3. public StringBuilder replace(int startIndex, int endIndex, String str): được sử dụng để thay thế chuỗi từ vị trị startIndex đến endIndex bằng chuỗi str.
  4. public StringBuilder delete(int startIndex, int endIndex): được sử dụng để xóa chuỗi từ vị trí startIndex đến endIndex.
  5. public StringBuilder reverse(): được sử dụng để đảo ngược chuỗi.
  6. public int capacity(): được sử dụng để trả về dung lượng hiện tại.
  7. public void ensureCapacity(int minimumCapacity): được sử dụng để đảm bảo dung lượng ít nhất bằng mức tối thiểu nhất định.
  8. public char charAt(int index): được sử dụng trả về ký tự tại vị trí quy định.
  9. public int length(): được sử dụng trả về chiều dài của chuỗi nghĩa là tổng số ký tự.
  10. public String substring(int beginIndex): được sử dụng trả về chuỗi con bắt đầu từ vị trí được chỉ định.
  11. public String substring(int beginIndex, int endIndex): được sử dụng trả về chuỗi con với vị trí bắt đầu và vị trí kết thúc được chỉ định.

Các ví dụ về lớp StringBuilder trong java

Dưới đây là các ví dụ về các phương thức của lớp StringBuilder trong java

1) Phương thức append() của lớp StringBuilder trong java

Phương thức append() của lớp StringBuilder nối thêm tham số vào cuối chuỗi.

public class StringBuilderExam1 {
 public static void main(String args[]) {
  StringBuilder sb = new StringBuilder("Hello ");
  sb.append("Java");//đến đây chuỗi ban đầu đã bị thay đổi
  System.out.println(sb);//in Hello Java  
 }
}

2) Phương thức insert() của lớp StringBuilder trong java

Phương thức insert() của lớp StringBuilder chèn chuỗi vào chuỗi này từ vị trí quy định.

public class StringBuilderExam2 {
 public static void main(String args[]) {
  StringBuilder sb = new StringBuilder("Hello ");
  sb.insert(1, "Java");//đến đây chuỗi ban đầu đã bị thay đổi
  System.out.println(sb);//in -> HJavaello  
 }
}

3) Phương thức replace() của lớp StringBuilder trong java

Phương thức replace() của lớp StringBuilder thay thế chuỗi bằng chuỗi khác từ vị trị bắt đầu và kết thúc được quy định.

public class StringBuilderExam3 {
 public static void main(String args[]) {
  StringBuilder sb = new StringBuilder("Hello");
  sb.replace(1, 3, "Java");
  System.out.println(sb);//in -> HJavalo  
 }
}

4) Phương thức delete() của lớp StringBuilder trong java

Phương thức replace() của lớp StringBuilder xóa chuỗi từ vị trị bắt đầu và kết thúc được quy định.

public class StringBuilderExam4 {
 public static void main(String args[]) {
  StringBuilder sb = new StringBuilder("Hello");
  sb.delete(1, 3);
  System.out.println(sb);//in -> Hlo  
 }
}

5) Phương thức reverse() của lớp StringBuilder trong java

Phương thức reverse() của lớp StringBuilder đảo ngược chuỗi hiện tại.

public class StringBuilderExam5 {
 public static void main(String args[]) {
  StringBuilder sb = new StringBuilder("Hello");
  sb.reverse();
  System.out.println(sb);//in -> olleH  
 }
}

6) Phương thức capacity() của lớp StringBuilder trong java

Phương thức capacity() của lớp StringBuilder trả về dung lượng của bộ nhớ đệm. Dung lượng mặc định của bộ nhớ đệm là 16. Nếu số lượng ký tự của chuỗi tăng lên thì dung lượng được tính theo công thức (dung lượng cũ*2)+2. Ví dụ: Nếu dung lượng hiện tại là 16, nó sẽ tăng lên (16*2)+2=34.

public class StringBuilderExam6 {
 public static void main(String args[]) {
  StringBuilder sb = new StringBuilder();
  System.out.println(sb.capacity());//mặc định là 16  
  sb.append("Hello");
  System.out.println(sb.capacity());//đến đây vẫn là 16  
  sb.append("java is my favourite language");
  System.out.println(sb.capacity());//đến đây là (16*2)+2=34 i.e (dung lượng cũ*2)+2  
 }
}

7) Phương thức ensureCapacity() của lớp StringBuilder trong java

Phương thức ensureCapacity() của lớp StringBuilder đảm bảo rằng dung lượng đã cho là tối thiểu với dung lượng hiện tại. Nếu nó lớn hơn dung lượng hiện tại, dung lượng hiện tại được tăng theo công thức (dung lượng cũ*2)+2. Ví dụ, dung lượng hiện tại là 16, nó sẽ tăng lên là (16*2)+2=34.

public class StringBuilderExam7 {
 public static void main(String args[]) {
  StringBuilder sb = new StringBuilder();
  System.out.println(sb.capacity());//mặc định là 16  
  sb.append("Hello");
  System.out.println(sb.capacity());//đến đây là 16  
  sb.append("java is my favourite language");
  System.out.println(sb.capacity());//đến đây là (16*2)+2=34 i.e (dung lượng cũ*2)+2  
  sb.ensureCapacity(10);//đến đây không có sự thay đổi
  System.out.println(sb.capacity());//đến đây là 34  
  sb.ensureCapacity(50);//đến đây là (34*2)+2  
  System.out.println(sb.capacity());//đến đây là 70  
 }
}

Nguồn: https://viettuts.vn/java-string/lop-StringBuilder-trong-java


Hãy tham gia nhóm Học lập trình để thảo luận thêm về các vấn đề cùng quan tâm.

Leave a Reply

Your email address will not be published. Required fields are marked *