Java中的集合

集合结构

    1. 该接口中有一个iterator方法,返回迭代器
        1. Collection(存储一个一个的元素)
            1. List(有序<存取的顺序一致>,可重复)
                1. ArrayList:底层是数组结构,对于指定元素的查找比较快,数组在内存中是一片连续的空间,但是在增删的时候需要移动整个内存块,比较慢
                2. LinkList:底层是链表的结构,查询的速度比较慢,增删的速度快,只需要修改节点的指向
                    1. 链表:由一个一个的节点组成 
                3. Vector:兼具共性,线程锁,线程安全
            2. Set(无序<存取的顺序不一致>,不可重复)
                1. HashSet: 底层是一个Hash表。存储在Hashset中的元素需要实现Hashcode方法和equals
                    1. LikedHashSet:有序的,不可重复
                2. TreeSet: 
                    1. 底层实现了TreeMap,实现了Comparator接口,左边所有的元素小于当前父节点元素小于右边所有的元素
                    2. TreeSet类型是J2SE中唯一可实现自动排序的类型
                3. Stack:先进后出
            3. Queue: 先进先出,FIFO;   
                1. priorityQueue : 优先级高的元素现出来,可以为元素设置优先级;
    2. Map(存储一对一对的<key,value>)
        1. HashMap:键值对存储:底层是Hash表+链表结构(JDK1.7之前),存储在HashMap中的key(实现HashCode方法和equals)
            2. LinkedHashMap 存取的顺序一致
        2. TreeMap:红黑树(二叉树),使用的二分查找算法,查询的速度比较快,要求存储在Tree集合中的元素的key必须实现Comparable接口
        3. HashTable:能够保证线程的安全。但是比较慢。keyvalue不允许是null。
            Properties:加载资源文件使用的,存储的类型是key/value1的方式
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值