集合框架(二)LinkedList的常见使用

Hi i,m JinXiang


⭐ 前言 ⭐

本篇文章主要介绍LinkedList的常见使用以及部分理论知识

🍉欢迎点赞 👍 收藏留言评论 📝私信必回哟😁

🍉博主收将持续更新学习记录获,友友们有任何问题可以在评论区留言


目录

⭐什么是List集合?

LinkedList的基本概念

LinkedList的常见使用

1、新增

2、删除

3、修改/查看

4、获取数据


⭐什么是List集合?

ArrayList,LinkedList,Vector都是隶属于List集合的一种;

集合List

LinkedList的基本概念

  • 1、线性表(List)的链式储存结构称为链表
  • 2、链表分为单链表双链表
  • 3、单链表中的节点包含data(数据)和 next(指向下一个节点的指针), 开销更小
  • 4、双链表中的节点包含data和next和prev(指向上一个节点的指针), 功能更强
  • 5、所有链表都有头节点, 头节点如果包含data, 则是第一个数据节点, 如果头节点不包含data, 则是附加头节点(sentry head), 使用附加头节点会简化代码
  • 6、写测试代码检查各个方法是否正确:

检查方法是否正确:1.检查一般情况下成立 2. 检查初始情况下成立 3. 更新必要的成员变

LinkedList的常见使用

1、新增
java 复制代码
import org.junit.Test;
 import java.util.LinkedList;
 public class vector {
    /**
     * LinkedList的
     * 增删改查操作
     * */
    @Test
    public void LinkedList_Test(){
        LinkedList linkedList = new LinkedList<>();
        //新增--添加一个数据
        linkedList.add("HELLO WORLD!");
        //新增--添加一个数据(在此列表中的指定位置插入指定的元素)
    }
}
2、删除
java 复制代码
import org.junit.Test;
import java.util.LinkedList;
public class vector {
    /**
     * LinkedList的
     * 增删改查操作
     * */
    @Test
    public void LinkedList_Test(){
        LinkedList linkedList = new LinkedList<>();
        linkedList.add(1,"张三");
        //删除--删除一个数据
        linkedList.remove("你好");
        //删除--删除一个数据(删除该列表中指定位置的元素)
        linkedList.remove(1);
        //删除--但不删除此列表的头(第一个元素)
        linkedList.element();
        //删除--检索并删除此列表的头(第一个元素)
        linkedList.poll();
        //删除--删除列表中所有数据
        linkedList.clear();
    }
}
3、修改/查看
java 复制代码
import org.junit.Test;
import java.util.LinkedList;
public class vector {
    /**
     * LinkedList的
     * 增删改查操作
     * */
    @Test
    public void LinkedList_Test(){
        LinkedList linkedList = new LinkedList<>();
        //修改--修改一个数据(用指定的元素替换此列表中指定位置的元素)
        linkedList.set(1, "李四");
        //返回此列表中的元素数
        linkedList.size();
        //查看所有信息
        System.out.println(linkedList);
    }
}
4、获取数据
java 复制代码
import org.junit.Test;

import java.util.LinkedList;
 
public class vector {
    /**
     * LinkedList的
     * 增删改查操作
     * */
    @Test
    public void LinkedList_Test(){
        LinkedList linkedList = new LinkedList<>();
        //获取元素--获取此列表中指定位置的元素
        linkedList.get(1);
        //获取元素--此列表中的第一个元素
        linkedList.getFirst();
        //获取元素--此列表中的最后一个元素
        linkedList.getLast();
    }
}

LinkedList 双链表实现了ListDeque接口。 实现所有可选列表操作,并允许所有元素(包括null )所有的操作都能像双向列表一样预期。 索引到列表中的操作将从开始或结束遍历列表,以更接近指定的索引为准。有关详细信息,请参阅博客jdk_api_1.8-JAVA中文版API手册(免费版)中提供的APL工具,查看各个实体文档和子类文档进行深入了解!

总结不易,希望uu们不要吝啬亲爱的👍哟(^U^)ノ~YO!!如有问题,欢迎评论区批评指正😁

相关推荐
会员源码网1 分钟前
数字格式化陷阱:如何优雅处理 NumberFormatException
java
孔明click3332 分钟前
Sa-Token v1.45.0 发布 🚀,正式支持 Spring Boot 4、新增 Jackson3/Snack4 插件适配
java·sa-token·开源·springboot·登录·权限认证
程序猿阿越1 小时前
Kafka4源码(二)创建Topic
java·后端·源码阅读
悟空码字1 小时前
Spring Boot 整合 MongoDB 最佳实践:CRUD、分页、事务、索引全覆盖
java·spring boot·后端
省长1 小时前
Sa-Token v1.45.0 发布 🚀,正式支持 Spring Boot 4、新增 Jackson3/Snack4 插件适配
java·后端·开源
NE_STOP2 小时前
MyBatis-动态sql与高级映射
java
后端AI实验室2 小时前
我把同一个需求分别交给初级程序员、高级程序员和AI,结果让我沉默了
java·ai
sTone873752 小时前
web后端开发概念: VO 和 PO
java·后端·架构
SimonKing3 小时前
JetBrains+Qoder变身Agentic 编码平台,媲美Cursor、Trae等AI编程平台
java·后端·程序员
Seven974 小时前
NIO:解开非阻塞I/O高并发编程的秘密
java