-
作用:hashCode和equals的作用一样,对比两个对象是否相等。
-
区别
-
equals()比较对象内容很多,比较全面,耗时较多,效率比较低,但绝对可靠。因为equals相等的两个对象,hashCode相等。
-
hashCode只比较一个hash值,效率比较高,不可靠,因为hashCode相等的两个对象equals不一定相等。
-
比较原则
-
先比较hashCode,如果不相同,两个对象肯定不相同
-
如果hashCode相同,再比较equals。
-
目的:既能大大提高效率,也能保证对比的绝对正确性。
java面试7之hashCode和equals作用和区别
最新推荐文章于 2022-10-24 14:43:52 发布