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);
    }

输出:

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

相关推荐
皓月斯语1 小时前
【C++基础】三目运算符
开发语言·数据结构·c++
剑锋所指,所向披靡!2 小时前
数据结构之拓扑排序
数据结构
夜不会漫长5 小时前
数据结构:链表
数据结构·链表
剑锋所指,所向披靡!6 小时前
数据结构之关键路径
数据结构·算法
笨笨饿6 小时前
101_详解USB协议
java·jvm·数据结构
J-Tony116 小时前
【Redis】数据结构&&持久化
数据结构·数据库·redis
来一碗刘肉面6 小时前
队列的链式实现
数据结构·c++·算法·链表
奶人五毛拉人一块8 小时前
二分算法以及习题讲解
数据结构·算法·二分
兰令水8 小时前
hot100【acm版】【2026.7.19打卡-java版本】
java·数据结构·算法·leetcode·面试
LJHclasstore_luo8 小时前
【C++题解】112354.平行时空
数据结构·c++·算法