Câu hỏi

So sánh sự khác nhau String vs StringBuffer vs StringBuilder?

Câu trả lời

Trong Java, String, StringBuffer, và StringBuilder là các lớp được sử dụng để làm việc với văn bản. Mỗi lớp này có những đặc điểm và sử dụng riêng biệt:

String

  • String là một lớp không thể thay đổi (immutable). Khi một đối tượng String được tạo ra, nó không thể được thay đổi. Bất kỳ thao tác nào tạo ra một chuỗi mới sẽ thực sự tạo ra một đối tượng String mới.
  • Ví dụ: String str = "Hello"; str += " World!"; sẽ tạo ra một đối tượng String mới chứ không phải thay đổi đối tượng str ban đầu.
  • String thích hợp cho việc xử lý chuỗi mà không yêu cầu thay đổi nội dung sau khi tạo.

StringBuffer

  • StringBuffer là một lớp có thể thay đổi (mutable) và đồng bộ (thread-safe). Nó cho phép thực hiện các thao tác trên chuỗi như thêm (append), xóa (delete), hoặc thay đổi (insert) mà không tạo ra các đối tượng mới.
  • StringBuffer được sử dụng khi cần thực hiện nhiều thao tác trên chuỗi trong một môi trường đa luồng, nơi đồng bộ hóa là quan trọng để đảm bảo tính nhất quán của dữ liệu.

StringBuilder

  • `St...
Bạn cần đăng nhập để xem
middle

middle

Gợi ý câu hỏi phỏng vấn

senior

Design pattern nào Java sử dụng cho tất cả các Swing components?

middle

JVM là gì? Tại sao Java được gọi là "Platform Independent Programming Language"?

middle

Sự khác biệt giữa JDKJRE trong Java là gì?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào