Stringbuffer StringBuilder String

StringBuffer與String主要的區別是:java

1.StingBuffer在進行字符串處理時不生成新的對象,可是String的每次修改都是產生新的對象,因此在內存上StringBuffer優於String安全

2.StirngBuffer只能經過構造函數創建。app

StringBuffer stringbuffer=new StringBuffer("ab");函數

注意:不能經過賦值符號賦值!!性能

3.String str = new String("welcome to ");ui

   str += "China";
的處理步驟其實是經過創建一個StringBuffer,而後調用append(),最後
再將StringBuffer toSting();
這樣的話String的鏈接操做就比StringBuffer多出了一些附加操做,固然效率上要打折扣.
spa

若是在程序中須要對字符串進行頻繁的修改鏈接操做的話.使用StringBuffer性能會更高。線程

StringBuffer與StringBuilder主要區別是:code

1.StringBuffer是線程安全的,StringBuilder是非線程安全的。對象

StringBuffer StringBuilder String三者相同點:

1.都是final 類型,不能被繼承。

2.都實現了CharSequence接口

public class test {

public static void main(String[] arg0){

StringBuffer stringBuffer=new StringBuffer("abc");

stringBuffer.append("de");

boolean bool=false;

stringBuffer.append(bool);

Object object=stringBuffer.charAt(2);

Object object2=stringBuffer.substring(2, 4);

System.out.println(stringBuffer);

System.out.println(object);

System.out.println(object2);

}

}

 

結果:abcdefalse

            c

            cd

相關文章
相關標籤/搜索