String: StringBuilder ()

Source: Internet
Author: User

string literal constant
StringBuffer string variable (thread safe)
StringBuilder string variable (non-thread safe)

"1" string and StringBufferThe main performance difference between the string type and the StringBuffer type is that the string is an immutable object , so each time a change is made to the string type it is equivalent to generating a new string object and then The pointer points to the new string object, so it is best not to use string to change the contents of the strings, because each generation of the object will have an impact on the system performance, especially when there is no reference object in memory, the JVM's GC will start to work, the speed will be quite slow. If you use the StringBuffer class, the result will be different, and each result will operate on the StringBuffer object itself, instead of generating a new object and changing the object reference. so in general we recommend the use of StringBuffer, especially if the string object is constantly changing.  in most cases stringbuffer > String "2" StringBuffer and Stringbuilde StringBuffer
Java.lang.StringBuffer thread-safe variable character sequences . A string-like buffer, but cannot be modified . Although it contains a specific sequence of characters at any point in time, some method calls can change the length and content of the sequence.
String buffers can be safely used with multiple threads. These methods can be synchronized if necessary, so all operations on any particular instance appear to occur in a serial order that is consistent with the sequence of method calls made by each thread involved.
The main operations on StringBuffer are the Append and insert methods, which can be overloaded to accept arbitrary types of data. Each method effectively converts the given data into a string, and then appends or inserts the character of the string into the string buffer. The Append method always adds these characters to the end of the buffer, while the Insert method adds characters at the specified point.
For example, if z refers to a string buffer object where the current content is "start", this method call Z.append ("le") causes the string buffer to contain "startle", and Z.insert (4, "le") will change the string buffer to contain " Starlet ".
in most cases StringBuilder > StringBuffer   Java.lang.StringBuilde
java.lang.StringBuilder A variable sequence of characters, which is 5.0 new. This class provides an API that is compatible with StringBuffer, but does not guarantee synchronization . This class is designed to be used as a simple replacement for stringbuffer, which is common when a string buffer is used by a single thread. If possible, it is recommended that this class be preferred because, in most implementations, it is faster than StringBuffer. The two methods are basically the same.   

String: StringBuilder ()

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.