2013年1月21日

equals方法和hashcode方法

摘要: 为什么要用到equals和hashcode方法equals:有时我们紧紧需要比较两个对象是否相等(自己手动调用)hashcode:是因为我们要将唯一的对象存入到集合中(或者说实际中集合中不能存在重复的值,也需要比较是否存在重复的,例如,hashset、hashmap的键) (程序自己调用)Object的equals是比较两个对象的内存地址,hashcode方法返回的是一个哈希码值,与内存地址有关,是int值,然而hashcode方法的算法跟对象本身有关(jdk根据对象的地址或者字符串或者数字算出来的),所以当你重写equals时,对象本身发生变化,当然hashcode也就发生了变化(由 Obj 阅读全文

posted @ 2013-01-21 01:46 lovebeauty 阅读(666) 评论(0) 推荐(0) 编辑

导航