黑马程序员技术交流社区

标题: 关于Set接口 [打印本页]

作者: 陈山    时间: 2012-11-12 21:53
标题: 关于Set接口
(1)特点:元素无序,无重复。
(2)Set
                |--HashSet
                        底层数据结构是哈希表。保证元素的唯一性依赖hashCode和equals方法。
                        过程:
                                首先,判断hashCode方法是否相同,如果不相同,则直接添加元素。
                                如果相同,就会继续进行equals方法的判断
                                        如果相同,元素不会添加。
                                        如果不同,元素添加到集合中。
                        
                        |--LinkedHashSet
                                底层数据结构由链表和哈希表组成。
                                由链表保证元素有序,由哈希表保证元素唯一。
                |--TreeSet
                        底层数据结构是二叉树。保证元素唯一性依赖的方法是比较器。
                                根据比较器返回值是否是0,确定该元素是否需要加入集合中。
                        而且排序也是依赖此方法。
                        
                        方式:
                                A:让元素本身具备比较性
                                        让自定义对象实现Comparable接口的compareTo(T t);
                                B:让集合本身具备比较性
                                        自定义比较器实现Comparator接口的compare(T t1,T t2);
                                
                        
        (3)HashSet存储和遍历数据
                步骤:        
                        创建集合对象
                        创建元素对象
                        存储元素
                        遍历元素

              




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