在Java中,HashMap通過hashcode和equals方法來保證key的唯一性。首先,當向HashMap中添加一個key-value對時,HashMap會調用key的hashcode方法來獲取該key的哈希值,然后根據這個哈希值計算出該key在HashMap內部數組中的索引位置。如果該索引位置上已經存在一個key,則會繼續比較這兩個key是否相等,如果相等則會覆蓋原來的value,如果不相等則會通過鏈表或紅黑樹等數據結構來保存具有相同哈希值的key-value對。這樣,HashMap可以保證每個key在HashMap中是唯一的。