都实现了list接口,提供了对应的增加,获取,删除对象的方法等等。
一、低层设计实现、安全、性能
Vector:低层实现是用数组实现的,线程安全,但是效率低,适合多线程中使用,经常读取对象,少插入和删除中使用。
ArrayList:低层实现使用数组实现的,线程不安全,效率高,适合单线程中使用,经常读取对象,少插入和删除中使用。
LinkedList:低层采用双向链表实现的,线程不安全,适合少读取,经常插入和删除对象中使用。
二、初始值以及扩容倍数和扩容因子
Vector: 10 size+size*0.5+1= size*1.5+1 1
ArrayList: 10 size+size*1= 2*size 0.75
LinkedList:无需扩容,链表实现,动态扩充。