13. Java 集合
集合框架体系概述
1. 为什么出现集合类?
方便多个对象的操作,就对对象进行存储,集合就是存储对象最常用的一种方法
2. 数组和集合类有何不可?
- 数组虽然也可存储对象,但长度固定; 而集合长度可变
- 集合只用于存储对象,集合长度是可变的, 集合可以存储不同类型的对象
Java 集合定义了两种基本的数据结构,一种是 Collection
,表示一组对象的集合;另一种是 Map
,表示对象间的一系列映射或关联关系。Java 集合的基本架构如下图。
在这种架构中,Set
是一种 Collection
,不过其中没有重复的对象;List
也是一种 Collection
,其中的元素按顺序排列(允许有重复)。
SortedSet
和 SortedMap
是特殊的集和映射,其中的元素按顺序排列。
Collection
、Set
、List
、Map
、SortedSet
和 SortedMap
都是接口,不过 java.util 包定义了多个具体实现,例如基于数组和链表的列表,基于哈希表或二叉树的映射和集。除此之外,还有两个重要的接口, Iterator 和 Iterable ,用于遍历集合中的对象,稍后会介绍。