Trong Java, ngoài đối tượng StringBuilder, chúng ta còn có đối tượng StringBuffer với chức năng giống như đối tượng StringBuilder nhưng về mặc hiện thực thì nó là thread-safe. Điều này có nghĩa, chỉ có duy nhất một thread có thể access vào đối tượng StringBuffer của chúng ta tại một thời điểm nào đó.
Thread-safe đảm bảo cho đối tượng StringBuffer của chúng ta được thống nhất khi nó được dùng trong nhiều thread khác nhau nhưng điều này cũng có nghĩa việc sử dụng đối tượng StringBuffer để build một chuỗi String sẽ chậm hơn.
Hãy xem xét ví dụ sau nhé các bạn:
Rõ ràng, các bạn thấy cùng một đoạn code nhưng sử dụng StringBuffer để build chuỗi String sẽ làm cho code chúng ta chậm hơn rất nhiều.
Nên các bạn hãy xem xét tùy trường hợp mà sử dụng nhé, chỉ sử dụng StringBuffer trong những trường hợp đặc biệt mà thôi.