Java数据结构(四):List的介绍

🌸雨落在了我的手上:个人主页

🐟个人仓库:Gitee仓库

❄️个人专栏:<<JaveSe>> <<C语言>> <<C语言数据结构>>**

🔥🔥🔥 人生格言: 无人扶我青云志,我自踏雪至山巅

🎬 博主简介:

目录

一:什么是List

二:常⻅⽅法介绍

三:List的使⽤

[1. boolean add(E e): 尾插 e](#1. boolean add(E e): 尾插 e)

[2. void add(int index, E element): 将 e 插入到 index 位置](#2. void add(int index, E element): 将 e 插入到 index 位置)

[3. E get(int index): 获取下标 index 位置元素](#3. E get(int index): 获取下标 index 位置元素)

[4. E set(int index, E element): 将下标 index 位置元素设置为 element](#4. E set(int index, E element): 将下标 index 位置元素设置为 element)

[5.E remove(int index): 删除 index 位置元素](#5.E remove(int index): 删除 index 位置元素)

[6.boolean contains(Object o): 判断 o 是否在线性表中](#6.boolean contains(Object o): 判断 o 是否在线性表中)

[7.List subList(int fromIndex, int toIndex): 截取部分 list (左闭右开)](#7.List subList(int fromIndex, int toIndex): 截取部分 list (左闭右开))

[8.void clear(): 清空](#8.void clear(): 清空)


内容大纲:

本文介绍了Java集合框架中的List接口及其常用方法。List作为继承自Collection的接口,代表线性表数据结构,支持增删改查等操作。重点讲解了8个常用方法:add(尾插/指定位置插入)、get(获取元素)、set(修改元素)、remove(删除)、contains(判断存在)、subList(截取子列表)和clear(清空),并通过ArrayList示例代码演示了每个方法的使用效果。最后指出List需要通过实现类(如ArrayList/LinkedList)实例化,为后续内容做铺垫。

一:什么是List

在集合框架中,List是⼀个接⼝,继承⾃Collection。

Collection也是⼀个接⼝,该接⼝中规范了后序容器中常⽤的⼀些⽅法,具体如下所⽰:

Iterable也是⼀个接⼝,表⽰实现该接⼝的类是可以逐个元素进⾏遍历的,具体如下:

站在数据结构的⻆度来看,List就是⼀个线性表,即n个具有相同类型元素的有限序列,在该序列上可 以执⾏增删改查以及变量等操作。

二:常⻅⽅法介绍

虽然⽅法⽐较多,但是常⽤⽅法如下:

三:List的使⽤

注意:List是个接⼝,并不能直接⽤来实例化。

如果要使⽤,必须去实例化List的实现类。在集合框架中,ArrayList和LinkedList都实现了List接 ⼝。

1. boolean add(E e): 尾插 e

java 复制代码
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("appeal");
        list.add("banna");
        list.add("zhangsan");
        System.out.println(list);
    }
}

输出:

2. void add(int index, E element): 将 e 插入到 index 位置

java 复制代码
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("appeal");
        list.add(0,"lele");
        list.add(1,"sasa");
        list.add(2,"haha");
        System.out.println(list);
    }

输出:

3. E get(int index): 获取下标 index 位置元素

java 复制代码
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("appeal");
        list.add("banna");
        list.add("zhangsan");
        String index = list.get(0);
        System.out.println(index);
    }

输出:

4. E set(int index, E element): 将下标 index 位置元素设置为 element

java 复制代码
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("appeal");
        list.add("banna");
        list.add("zhangsan");
        String ret = list.set(0,"hahaha");
        System.out.println(list);
    }

输出:

5.E remove(int index): 删除 index 位置元素

java 复制代码
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("appeal");
        list.add("banna");
        list.add("zhangsan");
        String remo = list.remove(0);
        System.out.println(list);
    }

输出:

6.boolean contains(Object o): 判断 o 是否在线性表中

java 复制代码
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("appeal");
        list.add("banna");
        list.add("zhangsan");
        System.out.println(list.contains("appeal"));
    }

输出:

7.List<E> subList(int fromIndex, int toIndex): 截取部分 list (左闭右开)

java 复制代码
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("appeal");
        list.add("banna");
        list.add("zhangsan");
        List<String> sub = list.subList(0,2); //左闭右开
        System.out.println(sub);

    }

输出:

8.void clear(): 清空

java 复制代码
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("appeal");
        list.add("banna");
        list.add("zhangsan");
        list.clear();
        System.out.println(list);
    }

输出:

以上就是我们的全部内容了,下一章我会继续介绍!!!!

相关推荐
Chester_19995 小时前
CSP202203C.计算资源调度器
开发语言·数据结构·c++·蓝桥杯
专注仿真10 小时前
Spring AI 实现智能对话系统项目指南
数据结构·spring·机器学习
间歇性努力持续性发呆的野生快乐选手11 小时前
高级数据结构:树状数组
数据结构
每周报刊16 小时前
竞速座舱级视界:爱攻 AGP497UCZD 超宽 QDOLED 显示器解析
数据结构·游戏·计算机外设
小星星闪亮登场18 小时前
图论--最小生成树(内含二分图)
数据结构·算法·图论·迭代加深·图搜索算法
2601_9622017219 小时前
Java进阶,集合,Colllection,常见数据结构
java·数据结构·windows
挽星安19 小时前
2026/8/29
数据结构·算法
positive_zpc20 小时前
进阶数据结构图——最短路径(二)
数据结构·算法·图论·最短路径
positive_zpc20 小时前
进阶数据结构图——最小生成树(一)
数据结构·算法·图论
码完就睡20 小时前
数据结构——遍历二叉树
数据结构·算法