for(String x:list){
if(x.equals(“del”))
list.remove(x);
}
会报错:
Exception in thread “main” java.util.ConcurrentModificationException
at java.util.AbstractList
I
t
r
.
c
h
e
c
k
F
o
r
C
o
m
o
d
i
f
i
c
a
t
i
o
n
(
U
n
k
n
o
w
n
S
o
u
r
c
e
)
a
t
j
a
v
a
.
u
t
i
l
.
A
b
s
t
r
a
c
t
L
i
s
t
Itr.checkForComodification(Unknown Source) at java.util.AbstractList
Itr.checkForComodification(UnknownSource)atjava.util.AbstractListItr.next(Unknown Source)
解决办法:
public class TestIterator {
public static void main(String[] args) {
List<String> list=new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
Iterator<String> stringIterator=list.iterator();
while(stringIterator.hasNext()){
String s=stringIterator.next();
if(s.equals("c")){
stringIterator.remove();
}
}
}
}