Vector与ArrayList的区别:
1、 Vector的方法都是同步的(Synchronized),是线程安全的,而ArrayList的方法不是,由于线程的同步必然要影响性能,因此,ArrayList的性能比Vector好。
2、 在不指定容量的情况下,ArrayList创建对象时,它的容量是0,只有在向ArrayList对象添加元素时,才会进行扩容至10;Vector创建对象时,它的容量直接是10;在指定容量的情况下,ArrayList和Vector创建对象是一样的,它的容量直接是指定的容量。
3、 当Vector或ArrayList中的元素超过它的容量大小时,它们会进行扩容,ArrayList只增加50%的大小,而Vector的扩容可以自己设置增加的容量大小,默认情况下,Vector会将它的容量翻倍。
ArrayList与LinkedList的区别:
1、ArrayList是基于动态数组的数据结构,而LinkedList是基于双向链表的数据结构。
2、对于随机访问操作set与get,ArrayList性能优于LinkedList。
3、对于新增和删除操作add和remove,LinkedList性能优于ArrayList