黑马程序员技术交流社区

标题: 集合问题 [打印本页]

作者: yuever123    时间: 2015-11-1 19:17
标题: 集合问题
TreeSet应该在什么时候使用
作者: 上帝的寵兒    时间: 2015-11-1 20:14
在set集合中,一般最常用的就是HashSet,当需要使用二叉树排序的时候,才需要使用TreeSet,但是这并不绝对
作者: 月明    时间: 2015-11-1 21:05
需要按自己需求排序的时候
作者: 我若为神    时间: 2015-11-1 21:06
集合感觉好难
作者: 海角秋风    时间: 2015-11-1 21:14
只是看了遍视频,过几天再好好练练。
现在说TreeSet何时使用有点早吧,在以后的实际使用过程中,才能有更深刻的了解。
作者: 至尊幽蓝    时间: 2015-11-1 21:56
从本质上说,集合类中存取的元素都有顺序——你调用迭代器方法时任何一个集合类对象中的元素都是按一定的顺序取出的。
List类集合(ArrayList或LinkedList)存取元素的顺序按的是元素被添加的顺序。
Set类集合(HashSet或TreeSet)存取元素的顺序和元素被添加的顺序无关,HashSet是按照每个元素的hashCode值排序,TreeSet是按照特定方法(Comparable接口的方法或Comparator接口的方法)对元素比较大小排序的。

HashSet中元素的顺序并不能反映元素值的大小排序,存入Hash表就是查取迅速;而TreeSet的排序规则能明确反映出元素值的大小排序,可能TreeSet的查找速度没有Hash表快,但其排序规则明确。




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