A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 陈山 中级黑马   /  2012-11-12 21:53  /  970 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

(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存储和遍历数据
                步骤:        
                        创建集合对象
                        创建元素对象
                        存储元素
                        遍历元素

              

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马