跳到主要内容

Java 集合框架

提示
  1. 集合框架概述:Java 集合框架提供接口和类来实现多种数据结构和算法,如 LinkedList 的双向链表实现。
  2. Collection 接口及其子接口Collection 是集合框架的根接口,包括子接口如 ListSetQueue,用于不同数据结构和操作。
  3. 其他重要接口:集合框架还包含 MapIterator 接口,分别用于键/值对存储和集合元素访问,且通过优化提高了代码效率。

Java 集合框架提供了一系列接口和类来实现各种数据结构和算法。

例如,集合框架的 LinkedList 类提供了双向链表数据结构的实现。

集合框架的接口

Java 集合框架提供了多种接口。这些接口包括了多种方法来对集合执行不同的操作。

Java 集合框架中的接口

我们将在后续章节详细学习这些接口、它们的子接口以及在各种类中的实现。在本教程中,让我们简要了解一下常用的接口。

Java Collection 接口

Collection 接口是集合框架层次结构的根接口。

Java 没有直接实现 Collection 接口,而是实现了它的子接口,如 ListSetQueue。要了解更多,请访问:Java Collection 接口

集合框架与 Collection 接口的区别

人们常常将集合框架和 Collection 接口混淆。

Collection 接口是集合框架的根接口。该框架还包括其他接口:MapIterator。这些接口也可能有子接口。

Collection 接口的子接口

正如前面提到的,Collection 接口包括了一些子接口,这些子接口由 Java 类实现。

Collection 接口的所有方法也存在于它的子接口中。

以下是 Collection 接口的子接口:

List 接口

List 接口是一个有序的集合,允许我们像数组一样添加和删除元素。要了解更多,请访问 Java List 接口

Set 接口

Set 接口允许我们将元素存储在不同的集合中,类似于数学中的集合。它不能有重复元素。要了解更多,请访问 Java Set 接口

Queue 接口

当我们想要以 先进先出 的方式存储和访问元素时,可以使用 Queue 接口。要了解更多,请访问 Java Queue 接口

Java Map 接口

在 Java 中,Map 接口允许元素以 键/值 对的形式存储。键是唯一的名称,可以用来访问映射中的特定元素。每个键与单个值相关联。要了解更多,请访问 Java Map 接口

Java Iterator 接口

在 Java 中,Iterator 接口提供了可以用来访问集合元素的方法。要了解更多,请访问 Java Iterator 接口

为什么使用集合框架?

Java 集合框架提供了可以直接使用的各种数据结构和算法。这主要有两个优点:

  • 我们不必手动编写代码来实现这些数据结构和算法。
  • 我们的代码会更高效,因为集合框架经过高度优化。

此外,集合框架允许我们根据特定类型的数据使用特定的数据结构。以下是一些示例,

  • 如果我们希望数据是唯一的,那么我们可以使用集合框架提供的 Set 接口。
  • 要以 键/值 对的形式存储数据,我们可以使用 Map
  • ArrayList 类提供了可调整大小数组的功能。

示例:Collections 框架的 ArrayList 类

在结束本教程之前,让我们看一个ArrayList 类的示例,该类属于集合框架。

ArrayList 类允许我们创建可调整大小的数组。该类实现了 List 接口(该接口是 Collection 接口的子接口)。

// 集合框架定义在 java.util 包中
import java.util.ArrayList;

class Main {
public static void main(String[] args){
ArrayList<String> animals = new ArrayList<>();
// 添加元素
animals.add("Dog");
animals.add("Cat");
animals.add("Horse");

System.out.println("ArrayList: " + animals);
}
}

输出

ArrayList: [Dog, Cat, Horse]

在以后的教程中,我们将通过示例详细学习集合框架(其接口和类)。