list.add上的NullPointerException

nov*_*rmr 20 java nullpointerexception

我正在接受NullPointerException这个modelData.add(i, es)方法.我从调试中知道es不是null.我真的很困惑,谢谢.

public class EventTableModel extends AbstractTableModel {

    //private int rowCount = 0;
    protected List<EventSeat> modelData;
    private static final int COLUMN_COUNT = 3;
    private Event e;
    Event j = GUIpos.m;
    int i = 1;

public EventTableModel(Event e) {
    this.e = e;
    try {
        System.out.println(modelData);
        for (EventSeat es : e.getEventSeats()) {
            modelData.add(i, es);
            i++;
        }
    } catch (DataException ex) {
        Logger.getLogger(EventTableModel.class.getName()).log(Level.SEVERE, null, ex);
    }

}
Run Code Online (Sandbox Code Playgroud)

Eri*_*rik 56

您需要初始化List才能获得NullPointerException.

protected List<EventSeat> modelData = new ArrayList<EventSeat>();
Run Code Online (Sandbox Code Playgroud)


She*_*dan 9

尝试

protected List<EventSeat> modelData = new ArrayList<EventSeat>(); 
Run Code Online (Sandbox Code Playgroud)


Piy*_*too 6

在第一眼看来,似乎modelData尚未实例化.我将实例化modelData,如:

protected List<EventSeat> modelData = new ArrayList<EventSeat>();
Run Code Online (Sandbox Code Playgroud)

仅供参考..在Java 7中,您可以使用新的语法 - someObject?.doSomething();