JAVA String 不可變性
jdk String 的底層實現基於 char 數組,String 類定義了一個 final 修飾的私有 char 類型數組,用於保存字元串。final 關鍵字修飾成員變數說明這個變數不可變,但是對於數組來說,final 修飾只能保證該指向數組首地址的變數值不可變,但是不能保證數組內容不可變,因此 String 的不可變性和 char 數組的 final 關鍵字並沒有直接關係。那到底 String 如何維持其不可變性的呢?
事實上,對於這個私有的 char 數組,String 並沒有提供任何一個 public 方法直接修改該數組內容,也就是外部調用無法改變 char 數組的內容,所有修改 String 的 public 方法最終都返回了一個新的 String,這就是為什麼 String 不可變的真正原因。


※asp.net core中負載均衡場景下http重定向https的問題
※原生JS+Canvas實現五子棋遊戲
※Python:一篇文章掌握Numpy的基本用法
※UIButton圖片文字控制項位置自定義
※Java集合-LinkedList
TAG:科技優家 |
※技術分享:String不可變性
※Pixium Vision推出一款主打黃斑變性治療的AR眼鏡
※J Gastroenterology:CT中發現冠狀動脈斑塊與患者肝臟脂肪變性之間的臨床關係
※繼金星之後又一男明星變性成功,神似Angelababy!
※Facebook聊天AI新突破!可根據用戶公開資料改變性格
※GSC2018開幕倒計時,CAOS Symposium脊柱退變性畸形的開放與微創治療觀點交鋒
※17歲時就通過變性手術成功變成美女,更是被媒體封為「泰版Angelababy」
※Facebook聊天AI新突破!可根據用戶公開資料改變性格;人工智慧可以預測你的音樂品味
※繼金星之後,又一位明星變性成功,網友:太像Angelababy了!
※Jaimie Wilson是如今居住在美國的大約140萬個變性人中的一個
※Blood:PD-L1在ALK+間變性大細胞淋巴瘤中表達上調的分子機制
※軍工機「諾基亞」為何不用Android系統?寧赴亡亦不變性!
※Neurology:嗅覺受損與大腦認知衰退和神經變性有關
※自曝喜歡古天樂,17歲變性成功,顏值甩金星一條街,神似Angelababy
※比女生還美!國際變性選美大賽冠軍出爐 火紅的泰版Angelababy輸給她
※魅影-2017年度蒂芬妮環球小姐冠軍,泰國最美變性人Yoshi Rinrada
※撞臉angelababy的最美人妖公開變性過程,身心痛苦是常人的10倍!
※所有男人都是變性人?Science揭秘人類性別分化關鍵
※新iPhone X很有看點 價格下降顏值不變性能完全夠用
※繼金星之後又一男明星變性成功,術後痛到爬著走,網友:神似Angelababy