Java 在Objectlist(ArrayList)中添加对象!
我有三节课。 1.类别:`Java 在Objectlist(ArrayList)中添加对象!,java,arraylist,Java,Arraylist,我有三节课。 1.类别:` public class Handler { private String name; private String short_name; private int semester; private int modul_number; private String prof; private int credits; private double note; private ArrayList<Handler_date> dates;
public class Handler {
private String name;
private String short_name;
private int semester;
private int modul_number;
private String prof;
private int credits;
private double note;
private ArrayList<Handler_date> dates;
public Handler() {
}
public Handler(String _name, String _short_name, int _semester, int _modul_number,
String _prof, int _credits, double _mark) {
this.modul_number=_modul_number;
this.name = _name;
this.short_name = _short_name;
this.semester = _semester;
this.prof = _prof;
this.credits = _credits;
this.note= _mark;
dates = new ArrayList<Handler_date>();
}
public void add_date(String _room, int _time,
String _day) {
Handler_date temp = new Handler_date(_room, _time,
_day);
dates.add(temp);
}`
}
我想添加一个modul,但是我得到了dates.add(temp)的NullPointerException代码>
我用templist调用这个方法。搜索modulenumber(modulenumber)。添加日期(“房间”,1,“星期一”)代码>
我的处理程序对象保存在额外的Objectlist/类中,保存到arrayList…private arrayList handlerlist代码>
有人知道我做错了什么吗
谢谢 日期数组列表未初始化。它为null,因此您将获得此异常
您正在调用新的处理程序();-在该构造函数中,不需要初始化日期
以后,请附上完整的stacktrace以获得帮助。很可能您没有初始化私有ArrayList日期代码>
对于处理程序
,您有一个不创建列表的无参数构造函数
将其更改为:
public Handler() {
dates = new ArrayList<Handler_date>();
}
public处理程序(){
日期=新的ArrayList();
}
您的日期
字段未初始化。可能是因为您没有使用参数构造函数创建了处理程序实例。NullPointerException的完整堆栈跟踪是什么?
public Handler() {
dates = new ArrayList<Handler_date>();
}