集合框架(二)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!!如有问题,欢迎评论区批评指正😁

相关推荐
MZ_ZXD0011 小时前
springboot汽车租赁服务管理系统-计算机毕业设计源码58196
java·c++·spring boot·python·django·flask·php
A 计算机毕业设计-小途1 小时前
大四零基础用Vue+ElementUI一周做完化妆品推荐系统?
java·大数据·hadoop·python·spark·毕业设计·毕设
岁忧3 小时前
(nice!!!)(LeetCode 每日一题) 679. 24 点游戏 (深度优先搜索)
java·c++·leetcode·游戏·go·深度优先
四维碎片5 小时前
【Qt】线程池与全局信号实现异步协作
开发语言·qt·ui·visual studio
IT码农-爱吃辣条5 小时前
Three.js 初级教程大全
开发语言·javascript·three.js
☺����6 小时前
实现自己的AI视频监控系统-第一章-视频拉流与解码2
开发语言·人工智能·python·音视频
猿究院--王升6 小时前
jvm三色标记
java·jvm·算法
染翰6 小时前
lua入门以及在Redis中的应用
开发语言·redis·lua
王者鳜錸6 小时前
PYTHON让繁琐的工作自动化-函数
开发语言·python·自动化
妮妮学代码6 小时前
c#:TCP服务端管理类
java·tcp/ip·c#