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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 路人丶 中级黑马   /  2017-12-13 21:38  /  1707 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

一、集合体系结构
        Collection(单列集合根接口)
                A:List(有序,有索引,可重复)
                        a:ArrayList(底层数组,查找快,增删慢)
                        b:LinkedList(底层数组,查找慢,增删快)
                        c:Vector(底层数组,被ArrayList取代,线程安全,都慢)
                B:Set(无序,无索引,不能重复)
                        a:HashSet
                        b:LinkedSet
二、常用功能
        a:boolean add(Object e): 向集合中添加元素
        b:void clear():清空集合中所有元素
        c:boolean contains(Object o):判断集合中是否包含某个元素
        d:boolean isEmpty():判断集合中的元素是否为空
        e:boolean remove(Object o):根据元素的内容来删除某个元素
        f:int size():获取集合的长度
        g:Object[] toArray():能够将集合转换成数组并把集合中的元素存储到数组中
三、遍历方法
        a:转数组
        b:普通for,按索引取元素(只针对List及其子类)
        c:迭代器 iterator(),可以返回一个迭代器对象,我们可以通过迭代器对象来迭代集合
                里面只有三个方法hasnext()判断下个是否有元素,next()取元素,remove()删除当前元素
                List增强的又listIterator()  有void add(E e) 增加方法
                        注意:迭代的时候不能用集合本身的方法增删集合元素,如果要增删用迭代器提供的
        d:增强for  
                格式for(元素类型  变量名 : 集合或者数组),底层迭代器,不能增删集合
四、泛型:<E>
        作用
                a:避免了类型转换的问题
                b:可以减少黄色警告线
                c:可以简化我们代码的书写
五、常见数据结构
        a:数组                长度固定,采用该结构的集合
                                查找元素快:通过索引,可以快速访问指定位置的元素
                                增删元素慢 ,每次添加元素需要移动大量元素或这创建新的数组
        b:链表                A:多个节点之间,通过地址进行连接。例如,多个人手拉手,每个人使用自己的右手拉住下个人的左手,依次类推,这样多个人就连在一起了。
                                B:查找元素慢:想查找某个元素,需要通过连接的节点,依次向后查找指定元素
                                C:增删元素快:
                                        增加元素:只需要修改连接下个元素的地址即可。
                                        删除元素:只需要修改连接下个元素的地址即可
        c:栈                先进后出
        d:队列                先进先出

3 个回复

倒序浏览
总得得很有条理呢,必须赞个
回复 使用道具 举报

回复 使用道具 举报
不错不错    杠杠的   加油
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马