Summary of HashMap in Java

The tricky thing is how to decide the key for a hashmap. Especially when you intend to use self-defined objects as key.

The simple rule is you have to overwrite hashcode() and equals() method.

Rule 1: x.equals(y) return true if x indeed is equal to y by your own logic;

Rule 2: if x.equals(y) then x.hashcode() == y.hashcode().

 

Ideally any two different objects have distinct hashcodes. But that‘t not possible since hashcode is used to generate real array index. Collisison has to happen. Thus in practice it‘s possible for two different objects to have same hashcode. Then equals() is used to tell one from the other.

Summary of HashMap in Java,布布扣,bubuko.com

Summary of HashMap in Java

上一篇:java/php DES/CBC/PKCS5Padding加密解密算法实现过程


下一篇:Java重载和覆盖