当前位置: 首页 / 技术干货 / 正文
LinkedList集合

2022-12-09

元素 集合 link linkedlist

  LinkedList集合

  ArrayList集合在查询元素时速度很快,但在增加或删除元素时效率较低。为了克服这种局限性,可以使用List接口的另一个实现类LinkedList。LinkedList集合内部维护了一个双向循环链表,链表中的每一个元素都使用引用的方式来记住它的前一个元素和后一个元素,从而可以将所有的元素彼此连接起来。当插入一个新元素时,只需要修改元素之间的这种引用关系即可,删除一个节点也是如此。正因为这样的存储结构,所以LinkedList集合对于元素的增删操作具有很高的效率。

  LinkedList集合添加元素和删除元素的过程如下图。

图片16

  新增一个元素,图中的元素1和元素2在集合中彼此为前后关系,在它们之间新增一个元素时,只需要让元素1记住它后面的元素时新元素,让元素2记住它前面的元素为新元素就可以了。删除一个元素,要想删除元素1与元素2之间的元素3.只需要让元素1与元素2变成前后关系就可以了。由此可见,LinkedList集合具有新增和删除元素效率高的特点。

  针对元素的添加、删除和获取操作,LinkedList集合定义了一些特有的方法如下表。

00

  接下来通过一个案例学习LinkedList方法的使用。

import java.util.LinkedList;

public class Example02 {
    public static void main(String[] args) {
        LinkedList link = new LinkedList(); // 创建LinkedList集合
        link.add("张三");
        link.add("李四");
        link.add("王五");
        link.add("赵六");
        System.out.println(link.toString()); // 取出并打印该集合中的元素

        link.add(3. "小明"); // 向该集合中指定位置插入元素
        link.addFirst("小红"); // 向该集合第一个位置插入元素
        link.addLast("小李");
        System.out.println(link);

        System.out.println(link.getFirst()); // 取出该集合中第一个元素
        System.out.println(link.getLast()); // 获取该集合中最后一个元素

        System.out.println(link);
        System.out.println("删除并返回该集合的第一个元素: " + link.removeFirst());
        System.out.println("删除并返回该集合中的最后一个元素: " + link.removeLast());
        System.out.println("删除并返回该集合中指定位置的元素: " + link.remove(3));
        System.out.println(link);
    }
}

分享: 更多

上一篇:ArrayList集合介绍

下一篇:Iterator接口介绍

好程序员公众号

  • · 剖析行业发展趋势
  • · 汇聚企业项目源码

好程序员开班动态

More+
  • HTML5大前端 <高端班>

    开班时间:2021-04-12(深圳)

    开班盛况

    开班时间:2021-05-17(北京)

    开班盛况
  • 大数据+人工智能 <高端班>

    开班时间:2021-03-22(杭州)

    开班盛况

    开班时间:2021-04-26(北京)

    开班盛况
  • JavaEE分布式开发 <高端班>

    开班时间:2021-05-10(北京)

    开班盛况

    开班时间:2021-02-22(北京)

    开班盛况
  • Python人工智能+数据分析 <高端班>

    开班时间:2021-07-12(北京)

    预约报名

    开班时间:2020-09-21(上海)

    开班盛况
  • 云计算开发 <高端班>

    开班时间:2021-07-12(北京)

    预约报名

    开班时间:2019-07-22(北京)

    开班盛况
IT培训IT培训
在线咨询
IT培训IT培训
试听
IT培训IT培训
入学教程
IT培训IT培训
立即报名
IT培训

Copyright 2011-2023 北京千锋互联科技有限公司 .All Right 京ICP备12003911号-5 京公网安备 11010802035720号