java中map的深複製與淺複製

map淺複製之用“=”進行賦值

 

簡單類型使用Map的putAll方法可以實現深度複製。

 

對象類型進行操作時,複製後的map修改了其中的值,結果原始map也被改動了,這種無法實現深度複製。究其原因我們可以知道person是一個對象,當他被new出來之後會有對應的內存地址與他對應,直接去修改這個對象的內容之後,原始存於map中的對象依然指向這個地址,所以會影響原始map中存放的對象。

 

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