ArrayList和Vector的区别

在创建迭代器之后,除非通过迭代器自身的 remove 或 add 方法从结构上对列表进行修改(结构上的修改是指任何添加或删除一个或多个元素的操作,或者显式调整底层数组的大小;仅仅设置元素的值不是结构上的修改),否则在任何时间以任何方式对列表进行修改(调用容器自身的remove和add方法进行修改),迭代器都会抛出ConcurrentModificationException

 

Vector和ArrayList

1、vector是线程同步的,所以它也是线程安全的,而arraylist是线程异步的,是不安全的。

2、记住并发修改异常java.util.ConcurrentModificationException ,优先考虑ArrayList,除非你在使用多线程所需。

 

Aarraylist和Linkedlist

1、对于随机访问get和set,ArrayList觉得优于LinkedList,LinkedList要移动指针。

2、于新增和删除操作add和remove,LinedList比较占优势,ArrayList要移动数据。

3、单条数据插入或删除,ArrayList的速度反而优于LinkedList.若是批量随机的插入删除数据,LinkedList的速度大大优于ArrayList. 因为ArrayList每插入一条数据,要移动插入点及之后的所有数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值