在 Java 中,List
接口是一个有序的集合,它允许我们按顺序存储和访问元素。它扩展了 Collection 接口。
实现 List 的类
由于 List
是一个接口,我们无法直接从中创建对象。
为了使用 List
接口的功能,我们可以使用这些类

这些类定义在 集合框架 中,并实现了 List
接口。
如何使用 List?
在 Java 中,我们必须导入 java.util.List
包才能使用 List
。
// ArrayList implementation of List
List<String> list1 = new ArrayList<>();
// LinkedList implementation of List
List<String> list2 = new LinkedList<>();
在这里,我们创建了 ArrayList
和 LinkedList
类的对象 list1 和 list2。这些对象可以使用 List
接口的功能。
List 的方法
List
接口包含了 Collection
接口的所有方法。这是因为 Collection
是 List
的父接口。
Collection
接口的一些常用方法(也包含在 List
接口中)是
方法 | 描述 |
---|---|
add() | 向列表中添加一个元素 |
addAll() | 将一个列表的所有元素添加到另一个列表中 |
get() | 帮助从列表中随机访问元素 |
iterator() | 返回一个 迭代器 对象,可用于顺序访问列表中的元素 |
set() | 更改列表中的元素 |
remove() | 从列表中移除一个元素 |
removeAll() | 移除列表中的所有元素 |
clear() | 移除列表中的所有元素(比 removeAll() 更高效) |
size() | 返回列表的长度 |
toArray() | 将列表转换为数组 |
contains() | 如果列表包含指定元素,则返回 true |
List 接口的实现
1. 实现 ArrayList 类
import java.util.List;
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
// Creating list using the ArrayList class
List<Integer> numbers = new ArrayList<>();
// Add elements to the list
numbers.add(1);
numbers.add(2);
numbers.add(3);
System.out.println("List: " + numbers);
// Access element from the list
int number = numbers.get(2);
System.out.println("Accessed Element: " + number);
// Remove element from the list
int removedNumber = numbers.remove(1);
System.out.println("Removed Element: " + removedNumber);
}
}
输出
List: [1, 2, 3] Accessed Element: 3 Removed Element: 2
要了解更多关于 ArrayList
的信息,请访问 Java ArrayList。
2. 实现 LinkedList 类
import java.util.List;
import java.util.LinkedList;
class Main {
public static void main(String[] args) {
// Creating list using the LinkedList class
List<Integer> numbers = new LinkedList<>();
// Add elements to the list
numbers.add(1);
numbers.add(2);
numbers.add(3);
System.out.println("List: " + numbers);
// Access element from the list
int number = numbers.get(2);
System.out.println("Accessed Element: " + number);
// Using the indexOf() method
int index = numbers.indexOf(2);
System.out.println("Position of 3 is " + index);
// Remove element from the list
int removedNumber = numbers.remove(1);
System.out.println("Removed Element: " + removedNumber);
}
}
输出
List: [1, 2, 3] Accessed Element: 3 Position of 3 is 1 Removed Element: 2
要了解更多关于 LinkedList
的信息,请访问 Java LinkedList。
Java List 与 Set
List
接口和 Set 接口 都继承自 Collection
接口。但是,它们之间存在一些区别。
- 列表可以包含重复元素。但是,集合不能包含重复元素。
- 列表中的元素按某种顺序存储。但是,集合中的元素按组存储,类似于数学中的集合。
现在我们知道了 List
是什么,在接下来的教程中我们将详细介绍它在 ArrayList 和 LinkedList 类中的实现。
另请阅读