String、StringBuffer與StringBuilder之間區別


1.三者在執行速度方面的比較: StringBuilder >  StringBuffer  >  String
 

4.StringBuilder與 StringBuffer

    StringBuilder:線程非安全的

    StringBuffer:線程安全的

 

String和StringBuffer 

  String類對象不可變,StringBuffer類是可以通過Append()來修改值,一旦修改String的值就是隱形的重建了一個新的對象,釋放了原String對象。

2

String 性能比不上StringBuffer

字符串連接String的+比StringBuffer的Append()性能差了很多

 

 

String:
是對象不是原始類型.
為不可變對象,一旦被創建,就不能修改它的值.
對於已經存在的String對象的修改都是重新創建一個新的對象,然后把新的值保存進去.
String 是final類,即不能被繼承.

StringBuffer:
是一個可變對象,當對他進行修改的時候不會像String那樣重新建立對象
它只能通過構造函數來建立,
StringBuffer sb = new StringBuffer();
注意:不能通過賦值符號對他進行賦值. 
sb = "welcome to here!";//error
對象被建立以后,在內存中就會分配內存空間,並初始保存一個null.向StringBuffer
中賦值的時候可以通過它的append方法.
sb.append("hello");

字符串連接操作中StringBuffer的效率要比String高:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM