前言:
最近遇到的一道很基础的题,有时候大家可能离开了编译器就不行了。
import java.util.List;
/**
*
* @author catchegg
* create date: 2018年6月1日 下午10:16:08
*/
public class TestClear {
public TestClear() {}
public static void main(String[] args) {
int value = 0;
List<int> l = new List<int>();
for(int i : l){
if(i==value){
l.remove(i);
}
}
}
}
错误:
- 泛形要求能包容的是对象类型,而基本类型在java里不属于对象,可以使用基本类型的包装类代替。List<Integer> l = new List<>();
- List是接口,不能实例化对象,可以改成其实现类ArrayList。List<Integer> l = new ArrayList<>();
- for-each不能删除,要用iterator。