Java数据集合中List,Set,Queue,Map等集合体系讲解(深入源代码)

前言

  • Java的存储集合主要分为两大阵容
    1. Collection
    2. Map
  • Collection旗下有三大,子接口
    1. List(列表) 元素有序可以重复,保持元素的顺序
    2. Queue(队列) 元素有序可以重复,保持队列的顺序
    3. Set(集合) 元素无序不可以重复元素
public interface List<E> extends Collection<E>
public interface Queue<E> extends Collection<E>
public interface Set<E> extends Collection<E> 
  • Map旗下以Key-Value存储,Key必须唯一
    1. HashMap
    2. TreeMap
    3. HashTable

java集合关系图

Collection

Collection接口继承, 超级接口Iterable, 是Collection层次结构中的根接口

//例如代码
public interface Collection<E> extends Iterable<E> 

Collection表示一组对象, 这些对象称之为Collection的元素
例如: List Queue Set
JDK不会提供此接口的任何直接实现, 而是提供一些更为具体的子接口(如List,Queue,Set接口)

//例如代码
public interface List<E> extends Collection<E>

Collection关系图

关于Collection构造方法

全部的Collection实现类,通常通过它的, 至少一个子接口, 来间接实现Collection,
并且应该提供两个"标准"构造方法:

  1. 是使用void声明的构造方法, 用于创建空的Collection;
public ArrayList() {
        this.elementData = DEFAULTCAPACITY_EMPTY_ELEMENTDATA;
    }
  1. 是带有Collection类型的单参数构造方法.
public ArrayList(Collection<? extends E> var1) {
        this.elementData = var1.toArray();
        if ((this.size = this.elementData.length) != 0) {
            if (this.elementData.getClass() != Object[].class) {
                this.elementData = Arrays.copyOf(this.elementData, this.size, Object[].class);
            }
        } else {
            this.elementData = EMPTY_ELEMENTDATA;
        }

    }

List

Map

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值