我将创建一个要向其中添加元素的列表。我通过客户填写 3 个对话框来获取他们对新车的偏好,现在我想将这些条目添加到列表中。
我已经声明了我的实例变量,这是我的列表的构造函数:
public Car(String aMaker, String aModel, int aYearBuilt);
{
super();
this.maker = aMaker;
this.model = aModel;
this.year = aYearBuilt;
}
我已经成功地将第一个客户对话框的返回结果放入 3 个变量中,如下创建:
String inputMaker;
String inputModel;
int inputYear;
(我记得使用 Integer.parseInt 将对话输入字符串转换为 int)。
现在我想将值放入列表中:
List<Car> newCarDetails = new ArrayList<Car>();
这是我开始出错的地方:
newCarDetails.add(new Car(inputMaker, inputModel, inputYear));
return newCarDetails;
只是我明显低估了这项任务,因为它不起作用。我刚刚得到一个 hashCode。非常感谢任何帮助。
最佳答案
你的代码对我来说看起来很好。您要将新的 Car
添加到之前创建的 List<Car>
中。如果“哈希码”是指当您执行 System.out.println(newCarDetails)
时,您会得到一些像 <java.util.List<0x123456>>
这样的输出,那么当您尝试打印任何没有 toString()
方法的类时,就会发生这种情况。许多集合框架类都没有。
如果你想漂亮地打印它,try the technique here。
关于java - 将存储为变量的值添加到 java 列表时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5638994/