java-迭代删除
来源:互联网 发布:淘宝没有安能物流 编辑:程序博客网 时间:2024/05/18 22:52
package com.phl;import java.util.ArrayList;/** * Created by panhongliang on 16/1/30. */public class Test { public static void main(String[] args) { List<String> arrayList=new ArrayList(); arrayList.add("0");arrayList.add("0"); arrayList.add("0");arrayList.add("0");
arrayList.add("0");arrayList.add("0"); arrayList.add("0");arrayList.add("0");
arrayList.add("0");arrayList.add("0");/*错误方法:remove时使size减小,使元素个数少于10。会报IndexOutOfBoundsException for(int i=0;i<10;i++){ arrayList.remove(i); }*/
/*不会报错,但结果错误:remove时size减小,arrayList.size()也在减少
但arrayList后面的元素不能被删除, for(int i=0;i<arrayList.size();i++){ arrayList.remove(i); }*/
/*错误方法:迭代前会获取modCount,remove触发modCount++,迭代下一个元素后会比较原modCount比较,不相等时触发ConcurrentModificationException for(String s:arrayList){ arrayList.remove(s); }
*/ /*正确方法:remove触发modCount++,但是remove后会把modCount赋值给迭代器内部的expectedModCount。所以下次迭代时expectedModCount=modCount
Iterator i=arrayList.iterator(); while (i.hasNext()){ i.next(); i.remove(); }*/ }}
0 0
- java-迭代删除
- java-迭代删除
- 迭代删除
- java集合迭代删除,一个很诡异的现象
- 迭代集合删除问题
- 使用Iterator迭代删除
- 集合迭代删除元素
- 迭代算法 JAVA
- 迭代算法 JAVA
- java迭代其
- java迭代其
- java迭代
- java 迭代list
- java ibatis 迭代
- java迭代Iterator
- java迭代map
- java-collection(迭代)
- java-listIterator(迭代)
- form-data/x-www-form-urlencoded/raw/binary
- torch环境搭建
- 对JAVA集合进行遍历删除时务必要用迭代器
- NuttX的学习笔记 9
- java代码混淆
- java-迭代删除
- USB驱动简单分析一
- 【Codeforcdes 237C. Primes on Interval】+ 二分
- android Manifest介绍
- ArrayList、LinkedList学习笔记
- Reverse Linked List
- Java 新手环境搭建 - JDK8 安装
- 关于Giraph 数据划分V1.2版本
- UVa 10755 Garbage Heap (最大价值子立方体+扫描法)