NullPointerException on list.add
I am getting a NullPointerException
at the modelData.add(i, es)
method. I know from de开发者_StackOverflow社区bugging that es
isn't null
. I'm really confused, thanks.
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);
}
}
You need to initialize a List to not get the NullPointerException
.
protected List<EventSeat> modelData = new ArrayList<EventSeat>();
Try
protected List<EventSeat> modelData = new ArrayList<EventSeat>();
On the first look, seems like modelData has not been instantiated. I would instantiate the modelData like:
protected List<EventSeat> modelData = new ArrayList<EventSeat>();
FYI.. In Java 7 there will be a new syntax you can use- someObject?.doSomething();
The modelData was not initialize.Try initialing it using the below snippet.
protected List<EventSeat> modelData=new ArrayList<>();
Thanks
精彩评论