本文主要是介绍加强fou循环的坑,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
今天遇到了一个有趣的事情,使用加强fou循环操作list时,会报错并发操作异常。
直到看了编译类,才发现,加强fou循环其实就是通过迭代器操作:
这里就会出现一个问题,迭代器在取出值时,就回去检测这个乐观锁,就是操作次数,也可以叫它版本号,这里眼尖的同学就发现了,一旦执行了删除list某个元素方法,就会版本号+1.
但是迭代器记录的版本号任然是初始的,所以就报错啦。
这篇关于加强fou循环的坑的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!