1. 程式人生 > >String 與StringBuffer的區別

String 與StringBuffer的區別

           在java語言中,String是不可變類,String物件一旦被建立,其值不能被改變;而StirngBuffer是可變類,當物件被建立後,仍然可以對其值進行修改。

  • 例如:String a =“2”;
  •                       a=“3”;
  • 這時很多人就會說,a的值不是已經發生變化了嗎?為什麼java規則說String物件沒有發生變化呢?
  • 原因:a的值從2變成3,是因為a的指向已經發生了變化(也就是說“2”的索引還在,“3”是另外一個索引了)。
  •            而StringBuffer所指向的索引沒有變化,只是索引對應的值發生變化

 

  • 還不明白,上圖!!!