Problem:
String S = "A" + "B" + "C ";
Here, we do not consider that "A", "B", and "C" are placed in the pool.
How does Java treat this "+" operator?
A saying is that "A" is a string object. After + "B", a string object is generated, probably after "AB", + "C, generate a String object, which is probably "ABC ",
Then, return the reference of the "ABC" String object to S. In this way, a total of six string objects are generated in this process, which is inefficient. Therefore, the stringbuffer should be used for implementation,
For example:
Stringbuffer sb = new stringbuffer (100 );
SB = sb. append ("A"). append ("B"). append ("C ");
Another argument is that Java reloads the "+" operator and uses stringbuffer to add the above strings.
Actually
In Java, it is indeed a heavy load on +. During string processing, you must create a stringbuffer object and use the append method of the stringbuffer object to connect the string, finally, the tostring method is called to return the string.