本帖最后由 adison 于 2012-4-12 17:43 编辑
compareTo主要应用于TreeSet或TreeMap中,用于保证元素的唯一性,当其返回0表示对象相同,并通过返回正数或者负数来比较对象,再通过迭代器实现对集合元素排序。原因:底层数据结构是二叉树。
hashCode主要应用于HashSet或HashMap中,用于保证元素的唯一性,通过判断元素的hashCode值是否相同,不相同则对象不等,如果相同,还会继续判断元素的equals方法。原因:底层数据结构是哈希表
equals在Object中用来比较两对象的内存地址是否相同,但一般来说,都要复写它,用来判断对象的内容是否相同。 |