黑马程序员技术交流社区

标题: Set的两个儿子 [打印本页]

作者: 小绿    时间: 2015-7-28 01:14
标题: Set的两个儿子
set 第一个儿子
HashSet 唯一(保持恒久不变),无序(但是还是有一定规则)
HashSet 存储自定义对象
set唯一 list不唯一

hashset源码解析,底层原码重写
hashcode把所有成员值相加
如果是对象是引用类型的返回hashcode值,基本类型直接用值

equals() 三部==>HASHCODE AND EQUALS自动生成(equals hashset toString)
A.this==obj
B.!(obj instanceof Student)
C.this.name.equals(s.name)&&this.age==s.age&&this.sex==this.sex&&this.score==s.score

Set第二个儿子
TreeSet可以对元素进行排序(有序,唯一)
A.自然顺序comparabler接口,泛型加接口

        @Override
        public int compareTo(String s)
        return 0;

        0  不添加 唯一性
        正 比以前大 往后放
        负 比以前小 往前放
B.比较接口comparator带参构造

开发原则
对修改关闭,对扩展开发






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