集合
- 1. 概述
- 2. 分类
- 2.1 单列集合(`Collection`)
- 2.2 双列集合(`Map`)
单列集合
Collection、List、Set、ArrayList、LinkedList’、Vector、HashSet、TreeSet、LinkedHashSet双列集合
Map、HashTable、HashMap、TreeMap、Properties、LinkedHashMap
具体信息请查看 API 帮助文档
1. 概述
为了在程序中保存数目不确定的对象,Java提供了一系列特殊的类,这些类可以存储任意类型的对象,并且长度可变,这些类统称为集合。集合类位于java.util
包中,使用时必须导包。
Java 集合框架是用于存储、操作和处理数据集合的一组类和接口。它提供了一种灵活、有效和方便的方式来管理数据。
Java 集合框架主要包括以下几个关键概念:
-
接口:集合框架定义了一系列接口来表示不同类型的集合,如
List
、Set
、Map
等。这些接口提供了对集合的基本操作和功能规范。 -
类:集合框架提供了一些实现了上述接口的类,这些类实现了集合接口中定义的方法。例如,
ArrayList
、HashSet
、HashMap
等。 -
层次结构:集合框架中的类和接口之间形成了一个层次结构。在这个层次结构中,
Collection
接口作为基本接口,定义了一些通用的集合操作,List
、Set
、Queue
接口继承自Collection
接口,分别提供了不同类型集合的特定操作。同时,Map
接口则是针对键-值对数据的集合操作。 -
迭代器:Java 集合框架提供了
Iterator
接口来遍历集合中的元素。通过迭代器,可以按顺序访问集合中的每个元素,进行添加、删除和修改等操作。 -
算法:集合框架还提供了一些算法类,可用于对集合进行排序、搜索和操作等常见操作。这些算法是通过静态方法提供的。
集合与数组的区别:
-
相同点
都是容器,可以存储多个数据
-
不同点
-
数组的长度是不可变的,集合的长度是可变的
-
数组可以存基本数据类型和引用数据类型
集合只能存引用数据类型,如果要存基本数据类型,需要存对应的包装类
-
2. 分类
集合按照其存储结构可以分为两大类,即单列集合(Collection
)和双列集合(Map
)。
2.1 单列集合(Collection
)
-
Collection
:单列集合类的根接口,用于存储一系列符合某种规则的元素,它有两个重要的子接口,分别是List
和Set
。-
List
-
特点:元素有序(可以按照存储的顺序取出数据)、可重复、有索引。
-
接口的主要实现类是:
ArrayList
和LinkedList
。
-
-
Set
-
特点:元素无序且不可重复,无索引。
-
接口的主要实现类是:
HashSet
和TreeSet
-
-
2.2 双列集合(Map
)
-
Map
:双列集合类的接口,用于存储具有键(Key
)、值(Value
)映射关系的元素,每个元素都包含一对键值,其中键值不可重复且每个键最多只能映射到一个值,在使用Map集合时可以通过指定的Key
找到对应的Value
。例如:根据一个学生的学号可以成功的找到该学生。- Map接口的主要实现类:
HsahMap
和TreeMap
。
- Map接口的主要实现类: