哈希表不能將可變對象作為key值,即引用類型的內容不能是可變的,這樣不安全,因為hashcode函數是根據對象的內容計算出key和value的位置,如果引用的內容可變,那麼每次查找的位置結果都不一樣,之前存儲的鍵值對就會找不到,不符合hash的設計原則,例如list類型是可變的,tuple是不可變的
哈希表插入和刪除元素入上圖所示,輸出如下:
set:
set底層是一個特殊的hashmap,其值對應鍵值對中的key,所以也不能存儲可變對象。
set的建立需要以一個list形式傳入,另外還可以通過add方法直接增加:
結果: