1.最好的方式是使用迭代器删除 iterator.remove()
代码:
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<>(Arrays.asList("111","222"));
list.add("aaa");
list.add("bbb");
list.add("ccc");
list.add("ddd");
list.add("eee");
System.out.println("集合长度:"+list.size());
System.out.println("内容:"+list);
Iterator<String> iterator = list.iterator();
while (iterator.hasNext()){
String next = iterator.next();
if ("bbb".equals(next)) {
iterator.remove();
}
}
System.out.println("集合长度:"+list.size());
System.out.println("内容:"+list);
}
输出结果:
2.直接使用list的remove进行删除 list.remove()
代码:
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<>(Arrays.asList("111","222"));
list.add("aaa");
list.add("bbb");
list.add("ccc");
list.add("ddd");
list.add("eee");
for (int i = 0; i < list.size(); i++) {
if ("bbb".equals(list.get(i))) {
list.remove(i);
}
}
System.out.println(list.size());
System.out.println(list);
}
输出结果: