LinkedList源码分析 您所在的位置:网站首页 linkedlist操作 LinkedList源码分析

LinkedList源码分析

#LinkedList源码分析| 来源: 网络整理| 查看: 265

JDK1.8

ArrayList源码分析--jdk1.8LinkedList源码分析--jdk1.8HashMap源码分析--jdk1.8AQS源码分析--jdk1.8ReentrantLock源码分析--jdk1.8

LinkedList概述

  1.LinkedList是用双向链表实现的集合,基于内部类Node实现的集合。  2.LinkedList支持双向链表访问、克隆、序列化,元素有序且可以重复。  3.LinkedList没有初始化大小,也没有扩容机制,通过头结点、尾节点迭代查找。

LinkedList数据结构

  数据结构是集合的精华所在,数据结构往往也限制了集合的作用和侧重点,了解各种数据结构是我们分析源码的必经之路。  LinkedList的数据结构如下:LinkedList源码分析--jdk1.8链表基础知识补充:1)单向链表:      element:用来存放元素      next:用来指向下一个节点元素      通过每个结点的指针指向下一个结点从而链接起来的结构,最后一个节点的next指向null。LinkedList源码分析--jdk1.82)单向循环链表      element、next 跟前面一样      在单向链表的最后一个节点的next会指向头节点,而不是指向null,这样存成一个环LinkedList源码分析--jdk1.83)双向链表      element:存放元素      pre:用来指向前一个元素      next:指向后一个元素      双向链表是包含两个指针的,pre指向前一个节点,next指向后一个节点,但是第一个节点head的pre指向null,最后一个节点的tail指向null。LinkedList源码分析--jdk1.84)双向循环链表      element、pre、next 跟前面的一样      第一个节点的pre指向最后一个节点,最后一个节点的next指向第一个节点,也形成一个“环”。LinkedList源码分析--jdk1.8

LinkedList源码分析 /** * LinkedList 使用 iterator迭代器更加 快速 * 用链表实现的集合,元素有序且可以重复 * 双向链表 */ public class LinkedList extends AbstractSequentialList implements List, Deque, Cloneable, java.io.Serializable { /** * 实际元素个数 */ transient int size = 0; /** * 头结点 */ transient Node first; /** * 尾结点 */ transient Node last; /** * 无参构造方法. */ public LinkedList() { } /** * 集合参数构造方法 */ public LinkedList(Collection


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有