黑马程序员技术交流社区
标题:
并发修改异常
[打印本页]
作者:
nanliner
时间:
2016-5-31 00:27
标题:
并发修改异常
为什么报并发修改异常?数据结构数组和链表的区别有哪些啊?
作者:
我love
时间:
2016-5-31 07:27
迭代器是依赖于集合存在的,在判断成功后,集合就新添加元素,但是迭代器却不知道, 这样一来就报错了,这个错叫做并发修改异常。
简单来说就是:迭代器遍历元素的时候,通过集合是不能进行元素修订的。
数组查询快,增删慢,链表相反,查询慢,增删快
作者:
爱生活爱Java
时间:
2016-5-31 10:17
简单来说就是你通过迭代器遍历集合的时候,同时也在往集合中新增元素,这时报的异常就是并发修改异常。
底层是数组结构的:查询快(有索引) 增删慢(增加或是删除指定索引处的元素,元素后方整体会后移或是前移)
底层是链表结构的: 增删快(可以在任意两个元素之间增加元素或是删除元素) 查询慢(无索引,找指定元素的话离开头近就从开头开始找;离末尾近就从末尾开始找;)
备注:数组结构及链表结构的优缺点都是相对的(比方说数组结构相对于链表结构查询快些)
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2