LinkedList 的不同之处在于:ArrayList 在底层还是以数组实现的数据存放(见源码),各个元素的内存地址是连续的,增删元素会影响整个集合中元素的内存地址;而 LinkedList 是通过链表(见源码)实现的链式存储结构,增删元素不会对其他位置的元素产生影响,对于频繁的“插入”和“删除”操作来说,代价较小。
Vector 是个古老的实现 List 接口的实现类,甚至比 List 还早(始于JDK 1.0),效率比 ArrayList 低,但是是线程安全的,可即使是这样,一般仍不选用它(Collections工具类有可以转换成线程安全的类,所以线程安全不是问题)。
时间: 2024-10-25 18:45:39