eIMACS项目3 java.lang.NullPointerException

时间:2014-03-03 05:05:46

标签: java

这是我正在尝试使用的代码,但无论何时运行它,我都会收到一条错误,指出java.lang.NullPointerException 空值 并突出显示myContents.add(b);

import java.util.*;
public class Bin
{
    private String myName;
    private ArrayList<BinItem> myContents;
    public Bin( String name )
    {
        myName = name;
    }
    public String getName()
    {
        return myName;
    }
    public ArrayList<BinItem> getContents()
    {
        return myContents;
    }
    public void add( BinItem b )
    {
        myContents.add(b);
    }   
    public String toString()
    {
        String s = "Bin " + myName + ":\n";
        for ( BinItem b : myContents )
            s += b + "\n";
        return s;
    }
}

1 个答案:

答案 0 :(得分:0)

  private ArrayList<BinItem> myContents;

您刚刚声明myContents并且从未初始化它。因此它是null

在声明时初始化它。

private List<BinItem> myContents= new ArrayList<BinItem>();

或者你可以在使用它之前完成它。

没有初始化你的行

myContents.add(b);

在运行时看起来像

   null.add(b);