我在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);
}
}
答案 0 :(得分:52)
您需要初始化List才能获得NullPointerException
。
protected List<EventSeat> modelData = new ArrayList<EventSeat>();
答案 1 :(得分:9)
尝试
protected List<EventSeat> modelData = new ArrayList<EventSeat>();
答案 2 :(得分:6)
初看起来,似乎还没有实例化modelData。我将实例化modelData,如:
protected List<EventSeat> modelData = new ArrayList<EventSeat>();
FYI ..在Java 7中,您可以使用新的语法 - someObject?.doSomething();
答案 3 :(得分:-1)
modelData 未初始化。尝试使用以下代码段初始化它。
protected List<EventSeat> modelData=new ArrayList<>();
谢谢