LinkedList与ArrayList的区别
前言:
本篇为大家带来面试必会的,超高几率问到的题目,几乎百分之八十-----LinkedList与ArrayList,会穿插一些源码来进行解读,也建议大家一定要学会读源码,至少要了解个大概,不要因为一两句看不懂就轻言放弃,这对程序员的提升是非常迅速的,基本上深入研究一遍就会很难忘掉,现在带着大家我们一起来lou一眼.
如果只是想直接知道有什么区别请跳到最后,最好要知其所以然
LinkedList
1.LinkedList的底层的数据结构是双向链表(一般都是从这个问题开始,这个必须要知道),这个看LinkedList的源码就可以知道,其实现了Deque类,Deque是double ended queue的简称,我们一般叫做双端队列
2.从以上源码也可以看出:LinkedList继承的是AbstractSequentialList,AbstractSequentialList继承AbstractList,而ArrayList直接继承AbstractList
3.LinkedList也实现了Serializable和Cloneable,所以可以直接序列化和进行克隆
4.LinkedList一个节点信息包含三个数据,(上一个节点地址,此元素,下一个节点地