黑马程序员技术交流社区
标题:
集合中的问题
[打印本页]
作者:
卢乾荣
时间:
2015-4-3 23:11
标题:
集合中的问题
在TreeSet集合中它的比较方式是用二叉树的数据结构来决定的,我想问下TreeSet集合中是不是也有HashCode()方法,是不是也需要重写啊
作者:
关山明月
时间:
2015-4-4 00:36
TreeSet没有hashCode()方法,不过其父类中有,可以继承。一般不需要重写,因为TreeSet是二叉树结构,它判断元素是否相同依赖的是compareTo()方法,返回值为0即为相同。
作者:
TanQiao
时间:
2015-4-4 10:02
当要用到hashCode(),和equals()这两个方法时,需要重写,比如说我们不仅把它放入TreeSet,还要把它放入hashSet的时候,但是单纯的放入TreeSet集合不需要重写
作者:
hello_csu
时间:
2015-4-4 11:02
不需要的,因为Treeset是红黑树结构,它只是基于比较函数来构建树的结构。 是否重写函数你要根据他底层数据结构的运算存储方式来的。
作者:
卢乾荣
时间:
2015-4-5 19:26
Thank You ,明白了
作者:
大神在何方
时间:
2015-4-5 23:33
不一定。。按照实际情况
作者:
花独恋水
时间:
2015-4-6 07:58
不需要,他依靠的是元素自然排序(元素自身具有比较性)或者让集合具有比较性,和hashcode没关系
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2