ArrayList和Vector的区别?

Posted littleboys

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ArrayList和Vector的区别?相关的知识,希望对你有一定的参考价值。

首先两个类都实现了List接口。他们都是有序不唯一的集合,说白了就是存储元素的位置是有序的(每一个元素都以一个对应的索引),相当于一个动态数组

 

ArrayList和Vector的区别,主要包括两个方面

  同步性:

      Vector是线程安全的,也就是说它的方法直线是线程同步的,而ArrayList是线程不安全的,它的方法之间是线程不同步的

      如果只有一个线程去访问集合那么使用ArrayList,他不考虑线程安全的问题,所以效率会高一些

      如果是多个线程去访问集合,那么使用Vector

  

  数据增长性:

      ArrayList和Vector集合都有一个初始容量的大小,当元素的个数超过存储容量是,就需要增加ArrayList和Vector的存储空间,每次增加不是

      增加一个而是增加多个,Vector是增加原来的两倍,ArrayList没有明文规定,但是从源码中可以看出增长原来的1.5倍

      ArrayList和Vector可以设置初始的存储空间的大小,Vector还以设置增长空间大小,而ArrayList不可以。

以上是关于ArrayList和Vector的区别?的主要内容,如果未能解决你的问题,请参考以下文章

JAVA集合9ArrayList和Vector区别

arrayList和vector的区别

27 ArrayList 和 Vector 的区别是什么?

ArrayList和Vector的区别

Vector和ArrayList的联系和区别

ArrayList和Vector的区别