正确的移除List中元素的方式:
1、使用List的remove(index)方法,移除指定位置的元素,用这种方法可以保证不会导致List结构的断裂
import java.util.ArrayList;
import java.util.List;
public class ListTest {
public static void main(String[] args) {
List<Integer> numbers = new ArrayList<Integer>();
numbers.add(1);
numbers.add(2);
numbers.add(3);
System.out.println(numbers);
numbers.remove(1);
System.out.println(numbers);
}
}
运行结果如下:
2、通过迭代器iterator()进行移除元素。用if语句判断元素内容与想要移除的元素相等,调用iterator.remove()方法,移除指定元素
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class ListTest {
public static void main(String[] args) {
List<Integer> numbers = new ArrayList<Integer>();
numbers.add(1);
numbers.add(2);
numbers.add(3);
System.out.println(numbers);
for(Iterator iterator = numbers.iterator();iterator.hasNext();) {
if((int)iterator.next()==2) {
iterator.remove();
}
}
System.out.println(numbers);
}
}
运行结果如下:
可见,两种方式都可以成功的删除List中的元素