关于foreach

很多高级的编程语言都会有foreach之类的对数据进行迭代的方式,这类迭代如何用相信不用多言,只是有一点是需要注意的,那就是foreach的线程安全问题,不要在迭代的时候对源数据加入add,romove逻辑,即使被标记为线程安全的,在foreach的时候,增加项和移除项的操作都会导致异常,错误代码示范如下

for(T t :  tList){

  /*业务逻辑*/   

  tList.add();

  tList.remove();

  /*业务逻辑*/这样处理,即使是线程安全的数据结构也会导致异常

)

posted @ 2016-08-29 10:27  Roger's  阅读(153)  评论(0编辑  收藏  举报