48.Lớp StringBuffer trong lập trình java

Lớp StringBuffer trong lập trình Java là một lớp được sử dụng để thao tác với chuỗi ký tự có khả năng thay đổi (mutable). StringBuffer tương tự như lớp StringBuilder, nhưng StringBuffer được thiết kế để hỗ trợ đa luồng (thread-safe) trong khi StringBuilder không đảm bảo tính đa luồng. Do đó, nếu bạn đang làm việc với đa luồng và cần xử lý chuỗi một cách an toàn, bạn nên sử dụng StringBuffer.

StringBuffer hỗ trợ các phương thức để thêm, thay đổi và xóa các ký tự trong chuỗi một cách hiệu quả. Bạn có thể sử dụng StringBuffer khi bạn cần thực hiện nhiều thao tác trên chuỗi mà không muốn tạo ra nhiều đối tượng String tạm thời.

Dưới đây là một số phương thức quan trọng của lớp StringBuffer:

  1. append(String str): Thêm chuỗi str vào cuối của StringBuffer.
  2. insert(int offset, String str): Chèn chuỗi str vào vị trí offset của StringBuffer.
  3. delete(int start, int end): Xóa các ký tự từ vị trí start đến end-1 khỏi StringBuffer.
  4. replace(int start, int end, String str): Thay thế các ký tự từ vị trí start đến end-1 bằng chuỗi str.
  5. reverse(): Đảo ngược chuỗi trong StringBuffer.
  6. capacity(): Trả về dung lượng hiện tại của StringBuffer.
  7. length(): Trả về độ dài (số ký tự) của StringBuffer.
  8. charAt(int index): Trả về ký tự tại vị trí chỉ mục index.
  9. setCharAt(int index, char ch): Đặt giá trị ký tự ch tại vị trí chỉ mục index.

Ví dụ sử dụng StringBuffer:

java
public class StringBufferExample {
    public static void main(String[] args) {
        StringBuffer stringBuffer = new StringBuffer("Hello");

        // Thêm chuỗi vào cuối
        stringBuffer.append(" World");
        System.out.println(stringBuffer); // Kết quả: "Hello World"

        // Chèn chuỗi vào vị trí chỉ mục 5
        stringBuffer.insert(5, " Java");
        System.out.println(stringBuffer); // Kết quả: "Hello Java World"

        // Xóa các ký tự từ vị trí 5 đến 9
        stringBuffer.delete(5, 10);
        System.out.println(stringBuffer); // Kết quả: "Hello World"

        // Thay thế các ký tự từ vị trí 6 đến 11 bằng chuỗi "Java"
        stringBuffer.replace(6, 11, "Java");
        System.out.println(stringBuffer); // Kết quả: "Hello Java"
    }
}

Lớp StringBuffer là một công cụ mạnh mẽ cho việc thao tác với chuỗi có khả năng thay đổi mà không tạo ra nhiều đối tượng String tạm thời, giúp tối ưu hiệu suất và sử dụng bộ nhớ.

Leave a Comment

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

Scroll to Top