Liz*_*uge 0 java list nullpointerexception
太多次我必须使用对象列表而不是对象,如果我使用
MyObj a = null;
a.setParameter = 0;
Run Code Online (Sandbox Code Playgroud)
有用.但如果我使用
List<MyObj> a = null;
MyObj b = getObjectFromSomewhere();
a.add(b);
Run Code Online (Sandbox Code Playgroud)
它失败并出现错误:java.lang.NullPointerException?
我怎么看?如果我的新List<MyObj> a单词是"null"或内部没有任何元素?
列表是您必须将元素放入的容器.列表必须在放入任何内容之前存在(因此您可以有一个空列表,请注意).
所以这:
List<MyObj> a = null;
Run Code Online (Sandbox Code Playgroud)
声明一个指向null的变量 - 不是实际的容器.尝试:
List<MyObj> a = new ArrayList<>();
Run Code Online (Sandbox Code Playgroud)
(请注意,列表有不同的类型,具有不同的性能特征,以上只是为了说明而选择的常用品种)
(为了解决你的第一点a.setParameter,我想这是一个静态方法 - 为类定义,而不是类的实例 - 并且令人困惑的Java会让你通过实例引用它)