黑马程序员技术交流社区

标题: 视频中的面试题总结 [打印本页]

作者: 路遥知马力    时间: 2015-7-20 21:56
标题: 视频中的面试题总结
学习列表迭代器知识的时候看到了这道面试题,感觉还不错,与大家分享下。
ConcurrentModificationException这是个什么异常,怎么产生的,怎么解决的?
   并发修改异常。
  怎么产生:
                  当我们通过迭代器迭代元素的过程中,又通过集合去添加了元素。这种情况是不允许的。
                  因为迭代器是依赖于集合存在的,如果集合发生改变,迭代器也应该相应的发生改变。
                  而我们目前看到的确实,迭代器没变,集合变了。所以,报出了一个并发修改异常。

  注意问题:通过迭代器遍历集合的时候,是不能通过集合去操作(添加,删除)。
  那么,我们可不可以这样理解呢?
  A:全部通过迭代器操作:元素是添加到刚遍历的那个元素后面。
                  通过迭代器迭代的时候,可以通过迭代器对集合进行操作。
  B:全部通过集合操作:元素是添加到最后的。
                  通过集合普通for遍历的时候,可以通过集合去操作。


作者: spike_az    时间: 2015-7-20 22:34
受教受教了!
作者: chaotongyou    时间: 2015-7-20 22:42
一起加油吧:)
作者: longbao    时间: 2015-7-20 23:31
恩,长知识了
作者: 18230343363    时间: 2015-7-20 23:50
谢谢分享,真是对自己来说太有用了
作者: 路遥知马力    时间: 2015-7-26 23:16
chaotongyou 发表于 2015-7-20 22:42
一起加油吧

:)一起加油
作者: kelly    时间: 2015-7-26 23:17
进来涨姿势的
作者: 袁月明    时间: 2015-7-27 00:10
赞赞赞!!!
作者: 李峥    时间: 2015-7-27 00:16
不错不错
作者: bingo54    时间: 2015-7-27 00:20
又学习了
作者: 小城青年    时间: 2015-7-27 00:24
恩恩,这个有用,留下了!!!!
作者: 田利阳    时间: 2015-7-27 00:45
感谢你哈         




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2