In the book \"Effective Java\", Josh Bloch says that
StringBuffer is largely obsolete and should be replaced by the non-synchronized implementation \'S
It's obsolete in that new code on Java 1.5 should generally use StringBuilder
- it's very rare that you really need to build strings in a thread-safe manner, so why pay the synchronization cost?
I suspect code that you see using StringBuffer
mostly falls into buckets of:
StringBuilder
StringBuilder