collection ---- ArrayLIst,Vector,LinkList区别

List (链表|线性表)

    特点: 接口,可存放重复元素,元素存取是有序的,允许在指定位置插入元素,并通过索引来访问元素

1.ArrayList 数组结构,线程不同步(数组查询快的原因是:数组的内存空间地址是连续的)

2.LinkList  链表结构

3.Vector  底层是数组数据结构 线程同步(数组长度是可变的百分之百延长) 多线程安全

1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构。 
2.对于随机访问get和set,ArrayList优于LinkedList,因为ArrayList可以随机定位,而LinkedList要移动指针一步一步的移动到节点处。(参考数组与链表来思考)
3.对于新增和删除操作add和remove,LinedList比较占优势,只需要对指针进行修改即可,而ArrayList要移动数据来填补被删除的对象的空间。

Set(集)

 特点: 不可以存放重复元素,元素存取是无序的

猜你喜欢

转载自www.cnblogs.com/shimon/p/9203440.html