Vector和ArrayList Vector和ArrayList在使用上非常相似,都可用来表示一组数量可变的对象应用的集合,并且可以随机地访问其中的元素。
Vector的方法都是同步的(Synchronized),是线程安全的(thread-safe),而ArrayList的方法不是,由于线程的同步必然要影响性能,因此,ArrayList的性能比Vector好。
当Vector或ArrayList中的元素超过它的初始大小时,Vector会将它的容量翻倍,而ArrayList只增加50%的大小,这样,ArrayList就有利于节约内存空间
ArrayList底层是数组数据结构,并且它的查询速度快,增删速度稍微慢点。
稍微提一嘴:LinkedList:底层是链表数据结构,查询速度稍微慢点,增删速度快。
Vector从Java 1.0起就存在,ArrayList从Java 1.2起才存在,较新。
所以ArrayList取代了Vector。 |