【数据结构】List介绍

目录

[1. 什么是List](#1. 什么是List)

[2. 常见接口介绍](#2. 常见接口介绍)

[3. List的使用](#3. List的使用)


1. 什么是List

在集合框架中,List是一个接口,继承自Collection。 此时extends意为拓展

Collection也是一个接口,该接口中规范了后序容器中常用的一些方法,具体如下所示:

Iterable也是一个接口,表示实现该接口的类是可以逐个元素进行遍历的,具体如下:

List的官方文档

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

2. 常见接口介绍

List中提供了好的方法,具体如下:

虽然方法比较多,但是常用方法如下

|-----------------------------------------------|---------------------------|
| 方法 | 解释 |
| boolean add(E e) | 尾插 e |
| void add(int index, E element) | 将 e 插入到 index 位置 |
| boolean addAll(Collection<? extends E> c) | 尾插 c 中的元素 |
| E remove(int index) | 删除 index 位置元素 |
| boolean remove(Object o) | 删除遇到的第一个 o |
| E get(int index) | 获取下标 index 位置元素 |
| E set(int index, E element) | 将下标 index 位置元素设置为 element |
| void clear() | 清空 |
| boolean contains(Object o) | 判断 o 是否在线性表中 |
| int indexOf(Object o) | 返回第一个 o 所在下标 |
| int lastIndexOf(Object o) | 返回最后一个 o 的下标 |
| List<E> subList(int fromIndex, int toIndex) | 截取部分 list |

3. List的使用

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

  • 如果要使用,必须去实例化List的实现类。
  • 在集合框架中,ArrayList和LinkedList都实现了List接口。
  • ArrayList 和 LinkedList 是实体类,继承以及实现了上述的抽象类与接口(重写了方法),所以里面包含的方法最多。

我们要想了解这些方法,必须了解背后的数据结构,所以我们接下来的重点是讲一下这个具体类的数据结构,然后回过来给大家使用一下这个方法!!!

具体使用参考下一篇博客。


好啦Y(^o^)Y,本节内容到此就结束了。

后续还会持续更新数据结构与算法方面的内容,还请大家多多关注本up,第一时间获取新鲜的知识。

如果觉得文章不错,别忘了一键三连哟!

相关推荐
duration~3 分钟前
SpringAI实现Reread(Advisor)
java·人工智能·spring boot·spring
我们从未走散9 分钟前
面试题-----微服务业务
java·开发语言·微服务·架构
YuforiaCode11 分钟前
24SpringCloud黑马商城微服务整合Seata重启服务报错的解决办法
java·spring·微服务
无敌的大魔王13 分钟前
数据结构 双链表与LinkedList
数据结构
SimonSkywalke34 分钟前
基于知识图谱增强的RAG系统阅读笔记(五)Agentic RAG:基于代理的RAG
算法
智者知已应修善业37 分钟前
【51单片机数码管循环显示3位数字】2022-10-26
c语言·经验分享·笔记·嵌入式硬件·算法·51单片机
考虑考虑38 分钟前
JDK21中的Sequenced Collections(序列集合)
java·后端·java ee
soilovedogs1 小时前
百度之星2024初赛第二场 BD202411染色
c++·算法·百度之星
啊阿狸不会拉杆1 小时前
《算法导论》第 15 章 - 动态规划
数据结构·c++·算法·排序算法·动态规划·代理模式
一 乐1 小时前
心理咨询|学生心理咨询评估系统|基于Springboot的学生心理咨询评估系统设计与实现(源码+数据库+文档)
java·数据库·spring boot·后端·论文·毕设·学生心理咨询评估系统