HashSet

2019-06-26 20:21 更新

HashSet 1.HashSet存放元素過程:

將一個元素存入HashSet中時,HashSet會先調(diào)用對象的hashCode方法,以此確定對象的存儲位置,之后HashSet會查詢對應(yīng)的hashCode位置是否已經(jīng)存儲對象{
    如果存儲了,則會調(diào)用equals方法判斷兩個對象是否相同:{
        如果相同:{
            則不存儲。
        }
        如果不同:{
            則在相同的hashCode位置使用鏈表的形式存儲進去,但會影響HashSet性能。
        }
    }
    如果沒有存儲:{
        則直接存儲進去。
    }
}

2.建議:

相同的對象hashCode值應(yīng)該相等,equals方法判斷為true。
hashCode與equals方法要寫最好一起寫。
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號