Yes..method A will create more objects that method B.. If u do multiple concatenation in a single line, the append() method of the StringBuffer class is called multiple times. But only two objects are created- StringBuffer and String objects. When u do the concatenation over multiple lines, a new String object is created everytime and for each of that a StringBuffer object is created. Performance-wise additional method calls are far better than additinal object creation and their subsequent garbage collection.