当前位置:知之问问>百科问答>ArrayList与Vector的相同点和不同点

ArrayList与Vector的相同点和不同点

2023-12-21 14:58:10 编辑:join 浏览量:596

问题补充说明:简要说明谢谢

ArrayList与Vector的相同点和不同点

vector安全arra手音妈余贵达假希滑派ylist线程不安全

一、从存储数据的方式来看:

1、360问答ArrayList是采用数组方式存储数据,实现了可变大小的数组。

它允许所有元素,包括null。

其特点:

(1)ArrayList没有同步。

(2)此数组元素数大于实际存储的数据以便增加和插入元素,都允许直接序号索引元素,但是插入数据要设计到数组元素移动等内存操作,所以索引数据快插入数据慢。

2、Vecto附急点弦侵专宣所r也是采用数组方式举存储数据,由于使用了sy正改跟话旧龙吸看手百nchronized方法(线程安全)所以性能上比ArrayList要差。

其特点:

(1)Vector是同步的。

(2)由Vector创建的Iterator,当一个Iterator被创建而且正在被使用,另一个线程改变了Vector的状态(例如,添加或删除了一些元素),这时调用Iterator的方法时将抛出ConcurrentModificationException,因此必须捕获该异常。

二、从存取操作的效率来看

在取执查怀开史技难乙际数据操作中Arraylist最快。

在存数据操作中linklist最快。

在删除数队应改欢茶积据操作中linklist最快。

三、从应用的角度来看:

如果需要快速随机访问元素,应该使用ArrayList。

如果程序在单线程环境中,或者访问仅仅在一个线程中进行,考虑非同步的类,其效率较高,如果多个线程可能同时操作一个英雷类,应该使用同步的类。

标签:ArrayList,Vector,相同点

版权声明:文章由 知之问问 整理收集,来源于互联网或者用户投稿,如有侵权,请联系我们,我们会立即处理。如转载请保留本文链接:https://www.zhzhwenwen.com/answer/266406.html
热门文章