ArrayList与Vector区别

                                            

ArrayList与Vector区别表
ArrayList Vector
一、实现原理:采用动态对象数组实现,默认构造方法建立了一个空数组 一、实现原理:采用动态数组对象实现,默认构造方法建立了一个大小为10的对象数组
二、第一次添加元素,扩展容量为10,以后的扩充算法:原来数组大小+原来数组的一半 二、扩充的算法:当增量为0时,扩充为原来大小的2倍,当增量大于0时,扩充为原来大小+增量
三、不适合进行删除或插入操做 三、不适合进行删除或插入操做
四、为了防止数组动态扩充次数过多,建议建立ArrayList时,给定初始容量。 四、为了防止数组动态扩充次数过多,建议建立Vector时,给定初始容量
五、多线程中使用不安全,适合在单线程访问时使用,效率较高。 五、线程安全,适合在多线程访问时使用,效率较低
  六、setSize若是设置的长度比当前元素个数要大的话,后面的元素将被置为空值

一、ArrayList设置默认大小算法

ArrayList<String> arrayList = new ArrayList(20);

二、Vector设置默认大小数组

Vector<String> vector = new Vector(20);

三、Vector设置增量大小(第一个参数是初始容量,第二个参数是增量)安全

Vector<String> vector = new Vector(20,1);
相关文章
相关标签/搜索