首页 > 其他 > 详细

List接口

时间:2019-09-07 14:31:20      阅读:72      评论:0      收藏:0      [点我收藏+]

1、类图:

技术分享图片

2、ArrayListVector底层都是用数组实现,唯一区别是Vector是一种线程安全的实现。

 

3、LinkedList底层使用双向循环链表实现,无论LinkedList是否为空,链表内都有一个header节点,header的后驱节点是链表第一个元素,前驱节点是链表的最后一个元素。

 

4、ArrayList内部的数组初始化大小为10,每次扩容会将新数组大小设置为原来的1.5倍。在能有效评估ArrayList数组大小初始值的情况下,指定容量大小能对其性能有较大的提升。

 

5、LinkedList由于使用了链表的结构,因此不需要维护容量的大小。但是每次元素新增都需要创建一个Entry对象,并进行更多的赋值操作,会比较占用内存空间,对堆内存和GC的要求比较高。

 

6、List的遍历通常有3种方式:ForEach操作、迭代器for循环

List接口

原文:https://www.cnblogs.com/xy80hou/p/11480515.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!