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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 聪明一只哈 中级黑马   /  2016-5-24 00:26  /  266 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1.HashSet 存储字符串并遍历
                a. HashSet 集合特点
                        没有索引,存取顺序不一致,元素唯一
                        遍历和List集合差不多,可以使用增强 for 循环
        2.HashSet是如何保证元素的唯一性的?
                低层调用存入对象的hashcode()和equals()                               
                原理:(想像拿着火车票找座位)
                        向HashSet集合存入对象时,对象会调用hashCode方法(获取座位号)
                        然后去集合(车厢)中找有没有和我hashCode值(座位号)相同的对象
                        没有:
                                直接存入HashSet集合
                        有:
                                说明哈希值(座位号相同)相同,此时会去调用存入的对象的equlas方法去比较
                                与哈希值相同的对象逐个(可能之前已经有人坐他身上了)比较
                返回true:
                                        认为相同对象,不在存入集合
                返回false:
                                        存入集合(坐到和他座位号相等的那个人身上)

0 个回复

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