【Java編程基礎】String、StringBuffer、StringBuilder的區別

一、性能上

1、String:字符串常量,不可修改,每次添加字符串都要新建對象,佔據較大空間時間

String a = "aabc";
//結果爲:a = "aabcbcd"
//程序新建字符串對象a來獲取新的值
a=a+"bcd"; 

2、StringBuffer & StringBuilder:字符串變量,可修改,例如append方法追加字符串

StringBuffer a = new StringBuffer();
//結果爲a = "abcefg"
a.append("abc").append("efg");

二、安全性上(多線程)

1、String:不可更改,線程安全

2、StringBuffer:方法帶synchronized關鍵字,線程安全,用於多線程大量字符串操作

3、StringBuilder:性能高、線程不安全,用於單線程大量字符串操作

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章