Java中ArrayList和Vector的区别是什么呢?
转自:
http://www.java265.com/JavaMianJing/202205/16515063773245.html
ArrayList:
ArrayList是一个动态数组,也是我们常用的集合,它允许任何元素的插入,甚至包括null。每一个ArrayList都有一个初始化的容量(10),该容量代表了数组的大小,随着容器中容量的不断增加,容器的大小也会随着增加。在每次向容器中增加元素时,会进行容量检查,当快溢出时,会进行扩容操作
Vector:
Vector类 是在 java 中可以实现自动增长的对象数组,vector在C++标准模板库中的部分内容,它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库
下文笔者将讲述ArrayList和Vector的区别,如下所示:
两者的共同点
ArrayList和Vector都继承List接口 都用于存储有序不唯一的集合 类似一个动态数组
ArrayList和Vector的区别
区别1:同步性
Vector是线程安全的,它的方法是线程同步的 ArrayList是线程不安全的,它的方法之间是线程不同步的
数据扩容上
ArrayList和Vector集合都有一个初始容量的大小 Vector是增加原来的两倍 ArrayList是增长原来的1.5倍 --------------------------------------------------------------- Vector还以设置增长空间大小 ArrayList不可以