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

© wb277379322 中级黑马   /  2016-9-6 09:30  /  413 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

List: 接口,有序,可重复,带索引
        ArrayList:数组结构,增删慢,查找快
        LinkedList: 链表结构,增删快,查找慢,包含首尾操作的方法
        Vector: 数组结构,增删慢,查找慢,安全!包含枚举的方法
       
        常用方法:带索引的方法,记得越多越好
Set: 接口,不能重复,不带索引
        HashSet:无序、不可重复,不带索引
        LinkedHashSet:可预测迭代顺序、不可重复,不带索引
       
        判断元素唯一性:
                ArrayList的contains方法,会通过集合内元素的equals方法判断是否有重复元素。  用参数传进来的元素依次与老元素比较
               
                HashSet的add方法在添加时,由于HashSet不能存放重复元素,所以会判断是否有重复元素。
                判断规则:
                        先判断新元素与集合内已经有的旧元素的HashCode值
                        如果不同,判断元素不同。
                        如果相同,再判断equals比较结果,返回true则相同,返回false则仍然不同。
                               
                所以当我们不想通过地址值判断两个对象是否相同,而想通过对象的属性内容比较两个对象是否相同时,就需要重写hashCode与equals方法。
                方法逻辑,参见Eclipse帮助重写的hashCode与equals方法  alt+shift+s
               

4 个回复

倒序浏览
{:2_32:}                              继续努力
回复 使用道具 举报
路过学习一下^^^
回复 使用道具 举报
挣黑马币主要看发帖获得的吗
回复 使用道具 举报
黑马币你在哪?快快到大哥兜里来
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马