java集合类代码_java集合类

Java集合类

一、Java集合类大致可以分为Set、List、Queue和Map四种体系。

1、  Set代表无序、不可重复的集合

2、  List代表有序、重复的集合

3、  Map代表具有映射关系的集合

4、  Queue是一种队列集合的实现

Java集合和数组的区别?

1、  数组的长度在初始化时指定,意味着只能保存定长的数据。而集合可以保存的数量不确定的数据。同时可以保存具有映射关系的数据。

2、  数组元素可以是基本类型、也可以是对象。集合中只能保存对象(实际上只是保存对象的引用变量),基本的数据类型的变量要变换成对应的包装类才能加入到集合中。

fe3b3c4b77f08056d74e70b6da3bb21f.png

Collection接口的继承关系

147b8a129c8b560a1cffa0a56335b184.png

其中的ArrayList、HashSet、LinkedList、TreeSet是我们经常使用的集合类

Map接口的继承关系

8f460ef31a6fb18af84d428c7c5cb96a.png

其中的HashMap、TreeMap是我们经常使用的集合类

Collection接口详解

Collection

1、  List 有序(存储顺序和取出顺序一致),可重复

2、  ArrayList 线程不安全,底层是使用数组实现,查询块,增删慢。效率高。

3、  LinkedList,线程不安全,底层是使用链表实现,查询慢,增删块。效率高。

4、  Vector,线程安全,底层是使用数组实现,查询块,增删慢。效率低。每次容量不足的时候,默认是自增长1倍(如果不知道容量的话),如下的代码:

int newCapacity = oldCapacity + ((capacityIncrement > 0) ?

capacityIncrement : oldCapacity);

5、  Set 元素唯一,最多包含一个null元素。

6、  HashSet 底层是由HashMap实现,通过对象的hashcode方法和equals方法保证插入元素的唯一性,无序。

7、  LinkedHashSet 底层数据结构由哈希表和链表组成。哈希表保证元素的唯一性,链表保证元素有序。(存储和取出是一致的)

8、  TreeSet 基于 TreeMap 的 NavigableSet 实现。使用元素的自然顺序对元素进行排序或者根据创建 set 时提供的 Comparator 进行排序,具体取决于使用的构造方法。元素唯一。

ArrayList

9f0ad3d6ca865e8e3b7bf7275b774e36.png

LinkedList

3186206d4cf95567c6f54e7147c8a424.png

Vector

ae91535dece175c2a36bc7b38c9f5088.png

HashSet

10123e0f07964de0c3b248f4bccb8ab3.png

List接口

b89b8ce283bdd2fa020363447b16667e.png

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值