arrayList 是基于数组实现的,linkedList 是基于双向链表链表实现的
arrayList在查找元素的时候性能好,插入删除效率低
arrayList在查找元素的时候性能好,插入删除效率低
linkedList 在插入删除的时候性能好,查找效率低
ArrayList、LinkedList,都是线程不安全的,即在多线程下修改数据可能会造成数据错乱,重复增删等问题。Vector和ArrayList比较类似,但不同的是Vector中的很多重要方法都是用synchronized实现同步,保证线程安全。在多线程下如果要保证线程安全,那么使用Vector比较好,但是在保证线程安全的同时效率也会下降。
在需要频繁读取集合中的元素时,使用ArrayList效率较高,而在插入和删除操作较多时,使用LinkedList效率较高。使用Vector可以多线程下保证修改数据线程安全。