基础增强部分张老师给我们讲了JDK1.5新特性,for增强foreach,
我们知道foreach运算比for要快不少,甚至有时候比c++的都要快,
不足之处就是只能从左往右单向遍历,并且不能多层迭代。
当然还有个最大的不足就是只能查询不能改变原值。
下面有个例子报了个想不同的错误:- public static void main(String[] args) {
- List<String> list = new ArrayList<String>();
- list.add("1");
- list.add("2");
- list.add("3");
- list.add("4");
- for (String string : list) {// java.util.ConcurrentModificationException??------>我下面try、catch了为嘛这里还给我报错呢,下面的删掉就不会出错了!
- if (string.equals("2")) {
- try {
- list.remove(string);
- } catch (Exception e) {
- e.printStackTrace();
- System.out.println("出错了");
- }
- }
- }
- System.out.println(list);
- }
复制代码 为啥呢
|