黑马程序员技术交流社区

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

作者: zllqxy    时间: 2015-10-1 17:55
标题: Set集合
(1)Set集合的特点:
                无序(存储和取出的顺序不一致),唯一。
        (2)HashSet
                如何保证元素的唯一性呢?
                        底层数据结构是哈希表。哈希表依赖于哈希值。
                        最终依赖两个方法hashCode()和equals()。
               
                顺序:
                        先比较hashCode()值:
                                相同:
                                        继续走equals()方法,根据返回值:
                                                true:说明元素重复。不添加。
                                                false:说明元素不重复,添加。
                                不同:就直接添加到集合。
               
                案例:
                        HashSet存储字符串并遍历。(String类重写了hashCode()和equals())
                        HashSet存储自定义对象并遍历。
                                存储Person对象,然后去掉重复值。






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