黑马程序员技术交流社区

标题: 关于集合框架里compareTo,hashCode,equals的总结问题 [打印本页]

作者: -_-#    时间: 2014-6-14 11:42
标题: 关于集合框架里compareTo,hashCode,equals的总结问题
看到了毕老师的第十六天,。,讲到了map这里,讲到一个习题。建立了一个student类
里面复写了compareTo,hashCode,equals这三个方法
问题来了。。。看的时候好像都听明白了。。
但是还是不大知道这三个方法什么时候需要复写,这三个方法具体作用是什么?

作者: 来自沙沙的我    时间: 2014-6-14 13:16
我和你进度差不多,也是看到这里,不过我后面的学了一些。这个你可以做个笔记啊,忘得好快啊。

equals:可以在ArrayList,LinkedList中做对象比较,进行equals的重写。
Comparator则是在TreeSet中做比较器,做法是新建一个类实现Comparator接口,并实现compare方法,使用的自然排序。TreeSet还可以在要放入集合的类中实现Comparable接口,并实现compareTo方法。
至于hashCode则是在HashSet中,HashSet中比较方法是,先进行哈希值的比较,再进行equals的比较。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2