String 一旦賦值就不能重新賦值

String 一旦賦值就不能重新賦值,因為重新賦值會再開辟一個空間存放新的值。string? 是fall修飾


String對象不可修改指的是對象本身不可修改,而不是引用不可修改。

String a = "你好";

這行代碼的意思是聲明一個String類型的引用變量叫做a,在內(nèi)存中創(chuàng)建一個String對象(值為"你好"),然后把這個對象的引用賦值給變量a。

a = "hello";

這行代碼執(zhí)行的效果是在內(nèi)存中另外創(chuàng)建了一個String對象(值為"hello"),然后把這個新對象的引用賦值給變量a,而不是把原來的內(nèi)存中的那個“你好”的String對象值變?yōu)椤癶ello”。如果之后內(nèi)存中那個“你好”的String對象沒有任何引用,那么就會被下一次垃圾回收器運行時回收。

String和所有的基本類型包裝類的對象都是不變量。內(nèi)存中的不變量對象的值是不能被改變的。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Swift1> Swift和OC的區(qū)別1.1> Swift沒有地址/指針的概念1.2> 泛型1.3> 類型嚴(yán)謹(jǐn) 對...
    cosWriter閱讀 11,697評論 1 32
  • Lua 5.1 參考手冊 by Roberto Ierusalimschy, Luiz Henrique de F...
    蘇黎九歌閱讀 14,264評論 0 38
  • 這是16年5月份編輯的一份比較雜亂適合自己觀看的學(xué)習(xí)記錄文檔,今天18年5月份再次想寫文章,發(fā)現(xiàn)簡書還為我保存起的...
    Jenaral閱讀 3,186評論 2 9
  • 從網(wǎng)上復(fù)制的,看別人的比較全面,自己搬過來,方便以后查找。原鏈接:https://www.cnblogs.com/...
    lxtyp閱讀 1,443評論 0 9
  • 一、基礎(chǔ)知識:1、JVM、JRE和JDK的區(qū)別:JVM(Java Virtual Machine):java虛擬機...
    殺小賊閱讀 2,576評論 0 4

友情鏈接更多精彩內(nèi)容