Skip to content

Latest commit

 

History

History
158 lines (109 loc) · 4.56 KB

File metadata and controls

158 lines (109 loc) · 4.56 KB

Java List接口

原文: https://www.programiz.com/java-programming/list

在本教程中,我们将学习 Java 中的List接口及其方法。

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


实现列表的类

由于List是一个接口,因此我们无法从中创建对象。

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

Classes implementing the List interface in Java

这些类在集合框架中定义,并实现List接口。


如何使用列表?

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

// ArrayList implementation of List
List<String> list1 = new ArrayList<>();

// LinkedList implementation of List
List<String> list2 = new LinkedList<>(); 

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


列表方法

List接口包含Collection接口的所有方法。 这是因为CollectionList的超级接口。

List接口中还提供了Collection接口的一些常用方法:

  • 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接口都继承Collection接口。 但是,它们之间存在一些差异。

  • 列表可以包含重复的元素。 但是,集合不能有重复的元素。
  • 列表中的元素以某种顺序存储。 但是,集合中的元素像数学中的集合一样按组存储。

既然我们知道了List是什么,我们将在下一个教程中详细了解ArrayListLinkedList类中的实现。