一、 集合是什么
集合类主要是对常见的数据结构进行完整的实现包装,然后提供了一系列的接口和实现子类。依次来帮助用户减少数据结构所带来的开发困难。所有的类都继承Object
,集合类也是。
集合关系图:
集合框架被设计成要满足以下几个目标:
- 该框架必须是高性能的。基本集合(动态数组,链表,树,哈希表)的实现也必须是高效的。
- 该框架允许不同类型的集合,以类似的方式工作,具有高度的互操作性。
- 对一个集合的扩展和适应必须是简单的。
Java 集合框架主要包括两种类型
一种是集合(Collection
),存储一个元素集合,另一种是图(Map
),存储键/值对映射。
具体实现类:
常用的有 ArrayList、LinkedList、HashSet、LinkedHashSet、HashMap、LinkedHashMap
等等。
Java 集合框架是一个用来代表和操纵集合的统一架构。集合框架都包含如下内容:
- 接口: 是代表集合的抽象数据类型。例如
Collection
、List
、Set
、Map
等。之所以定义多个接口,是为了以不同的方式操作集合对象 - 实现(类):是集合接口的具体实现。从本质上讲,它们是可重复使用的数据结构,例如:
ArrayList、LinkedList、HashSet、HashMap
- 算法:是实现集合接口的对象里的方法执行的一些有用的计算,例如:搜索和排序。这些算法被称为多态,那是因为相同的方法可以在相似的接口上有着不同的实现。
二、List
List
集合继承于Collection
(单值集合操作最大父接口)
List集合关系图
List集合的特点:
- 元素允许重复
- 各元素的顺序就是插入的顺序
- 可以存放
null
值
实现类有哪些:
ArrayList
:数组实现,查询快,增删慢,轻量级;(线程不安全)LinkedList
:双向链表实现,增删快,查询慢 (线程不安全)