This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
Though not an exhaustive explanation, one of the primary advantages is avoiding the creation of a whole slew of String objects as will happen when you concatenate a bunch of Strings using the '+' opreator. You get a not insignificant performance boost as object creation is a relatively expensive operation, and moreover, StringBuffer is highly optimized for string concatenation. StringBuffer is also mutable, whereas String is not, if that's an issue for you. hth, bear
Hi, String Buffer is like a string but with mutable characters. The Last paragraph in the java.lang.String javadoc says: The Java language provides special support for the string concatentation operator ( + ), and for conversion of other objects to strings. String concatenation is implemented through the StringBuffer class and its append method. String conversions are implemented through the method toString, defined by Object and inherited by all classes in Java. For additional information on string concatenation and conversion, see Gosling, Joy, and Steele, The Java Language Specification.
String buffers are safe for use by multiple threads. The methods are synchronized where necessary so that all the operations on any particular instance behave as if they occur in some serial order that is consistent with the order of the method calls made by each of the individual threads involved.
Cheers, Gaya3 ------------------------------------------------ Beginning is half done...