首页 > 其他 > 详细

集合相关面试问题

时间:2020-02-05 12:10:04      阅读:70      评论:0      收藏:0      [点我收藏+]

1.ArrayList和Vector的区别

首先,这两个类都实现了List接口(List接口继承了Collection接口),是有序集合,相当于一种动态的数组,能够通过索引(元素在List中位置,类似于数组的下标)来访问元素,并且其中的数据是允许重复的。

区别主要包括两个部分:

(1)同步性:

Vector是线程安全的,而ArrayList是非线程安全的,所以如果不是要求线程安全的情况下,最好使用ArrayList,效率会高些。

(2)数据增长:

ArrayList与Vector都有一个初始的容量大小,当存储超过了容量时,就需要增加ArrayList与Vector的存储空间,Vector默认增长原来的一倍,ArrayList增加原来的0.5倍。

2.ArrayList 和 LinkedList 的区别

(1) ArrayList是实现了基于动态数组的数据结构,LinkedList是实现了基于链表的数据结构。

(2) 对于添加、删除元素,LinedList比较占优势,因为ArrayList要移动数据。

(3) 对于遍历和查找元素,ArrayList比较快,因为LinkedList要移动指针。

集合相关面试问题

原文:https://www.cnblogs.com/liaowenhui/p/12262953.html

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