(點選上方公眾號,可快速關註)
來源:Hollis(@Hollis_Chuang),
www.hollischuang.com/archives/1230
定義一個字串
String s = “abcd”;
s中儲存了string物件的取用。下麵的箭頭可以理解為“儲存他的取用”。
使用變數來賦值變數
String s2 = s;
s2儲存了相同的取用值,因為他們代表同一個物件。
字串連線
s = s.concat(“ef”);
s中儲存的是一個重新創建出來的string物件的取用。
總結
一旦一個string物件在記憶體(堆)中被創建出來,他就無法被修改。特別要註意的是,String類的所有方法都沒有改變字串本身的值,都是傳回了一個新的物件。
如果你需要一個可修改的字串,應該使用StringBuffer 或者 StringBuilder。否則會有大量時間浪費在垃圾回收上,因為每次試圖修改都有新的string物件被創建出來。
看完本文有收穫?請轉發分享給更多人
關註「ImportNew」,提升Java技能