Skip to content

Java List

在Java中,List接口是一个有序的集合,允许我们按顺序存储和访问元素。它扩展了Collection接口。


实现List的类

由于List是一个接口,所以我们无法直接创建它的对象。

为了使用List接口的功能,我们可以使用以下这些类:

在Java中实现List接口的类

这些类都定义在Collections框架中,并且实现了List接口。


如何使用List?

在Java中,我们必须导入java.util.List包才能使用List

java
// 使用ArrayList实现的List
List<String> list1 = new ArrayList<>();

// 使用LinkedList实现的List
List<String> list2 = new LinkedList<>();

在这里,我们创建了名为list1和list2的ArrayListLinkedList类的对象。这些对象可以使用List接口的功能。


List的方法

List接口包含了Collection接口的所有方法,因为CollectionList的超接口。

一些常用的在Collection接口中,并且也在List接口中可用的方法有:

  • add() - 向列表添加一个元素
  • addAll() - 将一个列表的所有元素添加到另一个列表中
  • get() - 从列表中随机访问元素
  • iterator() - 返回可用于按顺序访问列表元素的迭代器对象
  • set() - 更改列表的元素
  • remove() - 从列表中移除一个元素
  • removeAll() - 从列表中删除所有元素
  • clear() - 从列表中删除所有元素(比removeAll()更高效)
  • size() - 返回列表的长度
  • toArray() - 将列表转换为数组
  • contains() - 如果列表包含指定的元素,则返回true

List接口的实现

1. 实现ArrayList类

java
import java.util.List;
import java.util.ArrayList;

class Main {

    public static void main(String[] args) {
        // 使用ArrayList类创建列表
        List<Integer> numbers = new ArrayList<>();

        // 向列表中添加元素
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);
        System.out.println("List: " + numbers);

        // 从列表中访问元素
        int number = numbers.get(2);
        System.out.println("Accessed Element: " + number);

        // 从列表中移除元素
        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类

java
import java.util.List;
import java.util.LinkedList;

class Main {

    public static void main(String[] args) {
        // 使用LinkedList类创建列表
        List<Integer> numbers = new LinkedList<>();

        // 向列表中添加元素
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);
        System.out.println("List: " + numbers);

        // 从列表中访问元素
        int number = numbers.get(2);
        System.out.println("Accessed Element: " + number);

        // 使用indexOf()方法
        int index = numbers.indexOf(2);
        System.out.println("Position of 3 is " + index);

        // 从列表中移除元素
        int removedNumber = numbers.remove(1);
        System.out.println("Removed Element: " + removedNumber);
    }
}

输出结果

List: [1,