[b]1)[/b] String is immutable while StringBuffer and StringBuilder is mutable object.
[b]2)[/b] StringBuffer is synchronized while StringBuilder is not which makes StringBuilder faster than StringBuffer.
[b]3)[/b] Use String if you require immutability, use Stringbuffer in java if you need mutable + thread-safety and use StringBuilder in Java if you require mutable + without thread-safety.
[b]2)[/b] StringBuffer is synchronized while StringBuilder is not which makes StringBuilder faster than StringBuffer.
[b]3)[/b] Use String if you require immutability, use Stringbuffer in java if you need mutable + thread-safety and use StringBuilder in Java if you require mutable + without thread-safety.