Java 基础教程

Java List(列表)

在 Java 中,List 是一种有序的集合,可以存储多个元素,并且允许元素重复。它是 Java 集合框架中最常用的接口之一,位于 java.util 包中。

List 接口特点

List 接口的特点包括:

(1)有序性:List 中的元素按照插入的顺序进行存储,并且可以根据索引访问和操作元素。

(2)允许重复元素:List 中可以存储重复的元素,同一个元素可以出现多次。

(3)可变大小:List 的大小可以根据需要进行动态调整,可以添加或删除元素。

(4)允许为null:List 允许存储为 null 的元素。

List 常用方法

st 接口继承了 Collection 接口,因此包含 Collection 中的所有方法。又因为 List 是列表类型,所以 List 接口还提供了一些适合于自身的常用方法。

List 接口定义了一系列方法用于对集合进行操作,包括但不限于以下常用方法:

  • 添加元素:add(E element)、add(int index, E element) 等。

  • 获取元素:get(int index)、indexOf(Object element) 等。

  • 删除元素:remove(int index)、remove(Object element) 等。

  • 修改元素:set(int index, E element) 等。

  • 遍历元素:forEach(Consumer<? super E> action)、iterator() 等。

List 常用实现类

常用的 List 实现类有:

  • ArrayList:使用动态数组实现,支持快速随机访问元素,适用于读取和遍历操作较多的场景。

  • LinkedList:使用双向链表实现,支持快速插入和删除元素,适用于频繁插入和删除操作的场景。

  • Vector:与 ArrayList 类似,但是是线程安全的,适合在多线程环境下使用。

List 示例

下面是一个完整的示例,展示了如何使用 List 接口及其实现类 ArrayList 来存储和操作元素,代码如下:

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

public class ListExample {
   public static void main(String[] args) {
       // 创建一个ArrayList对象
       List<String> list = new ArrayList<>();

       // 添加元素
       list.add("Apple");
       list.add("Banana");
       list.add("Orange");

       // 获取元素
       System.out.println("第一个元素:" + list.get(0));
       System.out.println("列表长度:" + list.size());

       // 遍历元素
       System.out.println("遍历列表:");
       for (String fruit : list) {
           System.out.println(fruit);
       }

       // 修改元素
       list.set(1, "Grape");
       System.out.println("修改后的列表:" + list);

       // 删除元素
       list.remove(2);
       System.out.println("删除后的列表:" + list);
   }
}

运行示例,输出如下:

第一个元素:Apple
列表长度:3
遍历列表:
Apple
Banana
Orange
修改后的列表:[Apple, Grape, Orange]
删除后的列表:[Apple, Grape]

在上面的示例中,我们首先创建了一个 ArrayList 对象,并使用 add() 方法向列表中添加元素。然后使用 get() 方法获取指定位置的元素,并使用 size() 方法获取列表的长度。

接下来,使用 for-each 循环遍历列表中的元素,并使用 set() 方法修改列表中的元素。最后,使用 remove() 方法删除指定位置的元素。

这只是 List 接口的一小部分用法示例,List 还提供了许多其他方法和功能,如排序、查找元素、子列表等,更多方法用法参考 Java API

说说我的看法
全部评论(
没有评论
关于
本网站属于个人的非赢利性网站,转载的文章遵循原作者的版权声明,如果原文没有版权声明,请来信告知:hxstrive@outlook.com
公众号