So sánh sự khác nhau String
vs StringBuffer
vs StringBuilder
?
So sánh sự khác nhau String
vs StringBuffer
vs StringBuilder
?
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
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.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
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.middle
Gợi ý câu hỏi phỏng vấn
Chưa có bình luận nào