黑马程序员技术交流社区

标题: Set常用方法 [打印本页]

作者: yangshibai    时间: 2015-9-10 23:55
标题: Set常用方法
Set:元素不可以重复,是无序的
       
                Set接口中的方法和Collection一致
               
                        HashSet:内部结构数据是哈希表,是不同步的
                       
        哈希表确定元素是否相同
       
                1.判断的是两个元素的哈希值是否相同。
                        如果相同,再判断两个对象的内容是否相同
                2.判断哈希值相同,其实判断的是对象的hashCode方法。判断内容相同,用的是equals方法。
       
                注意:如果哈希值不同,则不需要判断equals
                       
                       
                        TreeSet:可以对Set集合中的元素进行排序,是不同步的
                       
                判断元素唯一性的方式:就是根据比较方法的返回结果是否是0,是0就是相同元素,就不存
               
                TreeSet对元素进行排序的方式一:
                        让元素自身具备比较功能,就需要实现Comparable接口,覆盖compareTo方法

                        如果不要按照对象中具备的自然顺序排序,或者 如果对象中不具备自然顺序,怎么办?
                        可以使用TreeSet集合的第二种排序方式:
                                让集合自身具备比较功能,定义一个类实现Comparator接口,覆盖compare方法,
                                将该类对象作为参数传递给TreeSet集合的构造函数




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