将整数和字符串添加到列表<Object>
Adding Integer and String to List<Object>
我正在尝试将不同类型的变量(字符串和整数)添加到对象列表中,但是当我在 运行 代码中时,我总是得到 NullPointerException。我已经调试过了,变量不为空。有人可以帮助我并告诉我如何将不同类型的变量添加到对象列表吗?
private int x;
private int y;
private int z;
private int stockwerk;
private String address;
private List<Object> list;
public List<Object> getAttributeList () {
list.add(1, this.x);
list.add(2, this.y);
list.add(3, this.z);
list.add(4, this.stockwerk);
list.add(5, this.address);
return this.list;
}
您需要使用 list = new ArrayList<Object>()
初始化列表一次(例如)。否则列表将为空并且 list.add
将抛出 NullPointerException。
您发布的代码中有几个错误;
第一名:
定义一个构造函数,您可以在其中初始化列表
MyClass(){
list = new ArrayList<Object>();
}
2nd: 只是因为列表可以使用 object 不允许你这样做..
list.add(1, this.x);
list.add(2, this.y);
list.add(3, this.z);
list.add(4, this.stockwerk);
list.add(5, this.address);
您需要在列表中输入整数或字符串
如果您真的需要这样做:list.add(5, this.address);
是因为您试图指定插入顺序,但您是按顺序执行的,所以它没有多大意义,因为列表可以为你自动
如果你试图在列表中放入一些整数+字符串(我可以根据问题的标题推断出这一点)然后re-desing架构然后定义一个映射而不是列表,否则尝试读取列表中的数据时您会非常头疼....
我正在尝试将不同类型的变量(字符串和整数)添加到对象列表中,但是当我在 运行 代码中时,我总是得到 NullPointerException。我已经调试过了,变量不为空。有人可以帮助我并告诉我如何将不同类型的变量添加到对象列表吗?
private int x;
private int y;
private int z;
private int stockwerk;
private String address;
private List<Object> list;
public List<Object> getAttributeList () {
list.add(1, this.x);
list.add(2, this.y);
list.add(3, this.z);
list.add(4, this.stockwerk);
list.add(5, this.address);
return this.list;
}
您需要使用 list = new ArrayList<Object>()
初始化列表一次(例如)。否则列表将为空并且 list.add
将抛出 NullPointerException。
您发布的代码中有几个错误;
第一名: 定义一个构造函数,您可以在其中初始化列表
MyClass(){
list = new ArrayList<Object>();
}
2nd: 只是因为列表可以使用 object 不允许你这样做..
list.add(1, this.x);
list.add(2, this.y);
list.add(3, this.z);
list.add(4, this.stockwerk);
list.add(5, this.address);
您需要在列表中输入整数或字符串
如果您真的需要这样做:list.add(5, this.address);
是因为您试图指定插入顺序,但您是按顺序执行的,所以它没有多大意义,因为列表可以为你自动
如果你试图在列表中放入一些整数+字符串(我可以根据问题的标题推断出这一点)然后re-desing架构然后定义一个映射而不是列表,否则尝试读取列表中的数据时您会非常头疼....