黑马程序员技术交流社区

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

作者: 楚风★憧憬    时间: 2014-7-21 23:22
标题: Set集合
set集合属于collections的 一个子接口。下面有2个子类:1 HashSet和TreeSet;

HashSet特点:存入的元素师无需的,元素不可以重复。
HashSet:底层数据结构是哈希表。
HashSet如何保证元素的唯一性呢:
是通过HashCode和equals两个方法来保证元素的唯一性的,先判断HashCode是否相同,再判断equals方法是否为true.复写hashCode和equals方法。
TreeSet:元素是有序的,但元素不可以重复
TreeSet:底层是二叉树数据结构的。
使用TreeSet集合存入自定义对象,那么要想对自定义的对象进行排序得必须实现Comparable接口,根据返回正数负数和零来对元素进行排序的,返回0则元素相同。

第二种 可以自定义比较器,自定义比较器类实现Comparator 接口,复习compare方法,要传入两个对象进行比较,返回也是正数和负数,零,对元素进行排序得以及保证元素的唯一性的。然后创建该类对象作为参数传递给集合的构造函数即可。






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