注册 登录
编程论坛 JAVA论坛

关于foreach报空指针的代码解释

疯狂的小a 发布于 2018-04-13 09:53, 2610 次点击
程序代码:
import java.util.Iterator;
import java.util.List;

public class Test {
    public static void main(String[] args) {
        List<String> list = null;
        try {
            for (String string : list) {
                System.out.println(string);
            }
        } catch (Exception e) {
            e.printStackTrace();
            System.err.println(e.getMessage());
        }
        try {
            for (Iterator iterator = list.iterator(); iterator.hasNext();) {
                String string = (String) iterator.next();
                System.out.println(string);
            }
        } catch (Exception e) {
            e.printStackTrace();
            System.err.println(e.getMessage());
        }
        System.out.println("关于foreach报空指针的代码解释!");
        
    }
}
所以在使用foreach时,有必要对集合做非空校验!!!
2 回复
#2
xzjxu2018-04-16 12:22
你list就是空指针没有赋值啊
#3
疯狂的小a2018-04-16 20:58
回复 2楼 xzjxu
我的意思是,使用foreach前要做非空校验,不然可能会空指针
1