黑马程序员技术交流社区

标题: treemap如何确保它的元素不重复 [打印本页]

作者: 张东贤    时间: 2013-3-26 20:00
标题: treemap如何确保它的元素不重复
本帖最后由 张东贤 于 2013-3-27 12:58 编辑

treemap如何确保它的元素不重复,除了hashcode和equals方法,答对的同学,你懂得哦
作者: 聂益飞    时间: 2013-3-26 20:10
你想说什么????TreeMap保证键唯一性不是hashCode和equals还有其他方法?????坐等大神高见!!!!
作者: 贾振凯    时间: 2013-3-26 20:14
TrerMap对Key的要求与TreeSet对元素的要求是一样的,判断对象不相等的标准是:

两个对象通过equals(Object obj)方法比较返回false   或者   通过compareTo(Object obj)方法比较没有返回0
这种情况下,及时两者是同一对象也认为不是!!
作者: itserious    时间: 2013-3-26 20:18
TreeMap的底层数据结构 既有二叉树,也有hash表。

1.如查把它当作二叉树,那么就可以让元素自身具有比较性,可实现comparable接口,
  重写compareTo方法。在compareTo方法中来比较元素的属性,实现比较对象是否相等判断
2.让集合自身具有比较性。在构造方法中,传一个实现comparator接口的实例对象。在实现comparator的
    类中重写compare方法。来比较对对象是否相同。
3.如果你想你存放的任何对象都不相同,那么你可以让,compare方法,或compareTo方法只返回-1,就可以了。
4.另外就是把集合当作一个hash表了。那就要重写hashcode,和equals方法了。
作者: 张东贤    时间: 2013-3-27 12:58
我想,出题人的问法有问题…不解释哦,谢谢大家




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