黑马程序员技术交流社区

标题: 敢于集合的问题! [打印本页]

作者: 888_loveyou    时间: 2014-4-8 10:12
标题: 敢于集合的问题!
面试的时候经常被面试到!但就是记不住..ArrayList,LinkedList 的特点?


作者: 道途    时间: 2014-4-8 12:21
ArrayList:底层数据结构是数组结构。线程不安全的,但是查询的速度很快.。所以ArrayList的出现替代了Vector
LinkedList:底层是链表数据结构。线程不安全的,同时对元素的增删操作效率很高
Vector:底层数据结构是数组结构。jdk1.0版本。线程安全的。无论增删还是查询都非常慢.已被ArrayList替代。

作者: 一世英明    时间: 2014-4-8 14:53
道途 发表于 2014-4-8 12:21
ArrayList:底层数据结构是数组结构。线程不安全的,但是查询的速度很快.。所以ArrayList的出现替代了Vecto ...

arrayList 和 linkedList   都是线程不安全的吗?  这个怎么知道的啊?
作者: 一世英明    时间: 2014-4-8 15:03
ArrayList  和  LinkedList   都是实现  了   List  的接口:

她们的相同点:它们都是可以  容纳 所有类型,包括 null值, 并且允许重复的元素插入!
而且  还 能保证插入的元素的存储顺序:

ArrayList 实现了长度可变的数组,在内存中分配连续的空间.遍历元素  和  随机访问元素的效率比较高,而添加和删除元素时效率不高!!!

LinkedList 采用链表存储方式.插入,删除元素时效率比较高..弥补ArrayList的不足..


我觉得说出他们各自的特点,那异同点就清晰明了....









欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2