ArrayList和LinkedList区别

目录

一、性质不同

二、作用不同

三、特点不同


一、性质不同

1、arraylist:ArrayList就是动态数组,用MSDN中的说法,就是Array的复杂版本。

2、linkedlist:LinkedList 是一个继承于AbstractSequentialList的双向链表。

二、作用不同

1、arraylist:提供了动态的增加和减少元素,实现了ICollection和IList接口,灵活的设置数组的大小等好处。

2、linkedlist:LinkedList 实现了Cloneable接口,即覆盖了函数clone(),能克隆;LinkedList 实现java.io.Serializable接口,这意味着LinkedList支持序列化,能通过序列化去传输。

三、特点不同

1、arraylist:每个 ArrayList 实例都有一个容量。该容量是指用来存储列表元素的数组的大小。它总是至少等于列表的大小。随着向 ArrayList 中不断添加元素,其容量也自动增长。并未指定增长策略的细节,因为这不只是添加元素会带来分摊固定时间开销那样简单

2、linkedlist:AbstractSequentialList 实现了get(int index)、set(int index, E element)、add(int index, E element) 和 remove(int index)这些骨干性函数。降低了List接口的复杂度。这些接口都是随机访问List的,LinkedList是双向链表;既然它继承于AbstractSequentialList,就相当于已经实现了"get(int index)这些接口"。

相关推荐
明月_清风8 小时前
从二叉树到 B+ 树:一文搞懂工程中「树」的演化之道
数据结构·算法·go
渡我白衣8 小时前
并查集:基础认识与模拟实现
android·java·javascript·数据结构·c++·算法·并查集
血小板要健康9 小时前
链表 阶段算法总结
java·数据结构·笔记·算法·leetcode·链表
wuyk55513 小时前
107.FreeRTOS 链表深度解析:从原理到面试满分答案
c语言·开发语言·数据结构·stm32·单片机·链表·面试
-dzk-13 小时前
【链表】LC 138.随机链表的复制
数据结构·链表
洋不写bug14 小时前
链表补充练习,双链表的模拟实现
java·数据结构·链表·双链表·底层实现
白狐_79814 小时前
408 数据结构|外部排序:流程与 k 路归并
数据结构·算法
我不会起名字32217 小时前
一天一道算法题(26):栈的简单应用
java·数据结构·python·算法·leetcode·golang·
不会就选b17 小时前
算法日常・每日刷题--<贪心+大根堆>2
数据结构·算法
事圆则缓17 小时前
Java 常见数据结构与 Android 使用场景
android·java·数据结构