我正在尝试在Java中创建一个包含多个对象类型的ArrayList。到目前为止我已经
了import java.util.ArrayList;
public class DragRace {
public class Dragsters {
public String name;
public double rTime;
public int torque;
public double traction;
public int burnout;
}
ArrayList<Dragsters> dragsterList = new ArrayList<Dragsters>();
dragsterList.add("one", 0.6, 1000, 0.9, 3);
但它给了我错误
cannot resolve symbol 'add.'
我在Google上搜索过但无法找到可用于我正在做的事情的答案。任何帮助将不胜感激。谢谢!
答案 0 :(得分:1)
首先,您不能在类中包含语句,但在方法,构造函数或初始化程序块之外。将该代码放在main
。
其次,请致电new Dragsters()
,而不是"one", 0.6, 1000, 0.9, 3
。 Java不会接受参数,推断类型(Dragster
),创建该类型的对象,并按照它们声明的顺序自动将它们分配给实例变量。 <{1}}中没有这样的add
方法可以获取这5个参数。
第三,如果你确实想在创建ArrayList
时传递这些值,那么在Dragster
中创建一个构造函数,它将获取5个参数并明确地将它们分配给它的实例变量。
答案 1 :(得分:0)
dragsterList.add(新的Dragsters(“one”,0.6,1000,0.9,3));
答案 2 :(得分:0)
同意@rgettman。修改后的代码如下所示。
public class DragRace {
public class Dragsters {
Dragsters(String name, double rTime, int torque, double traction, int burnout){
this.name = name;
this.rTime = rTime;
this.torque = torque;
this.traction = traction;
this.burnout = burnout;
}
String name;
int burnout double rTime;
int burnout int torque;
int burnout double traction;
int burnout int burnout;
}
ArrayList<Dragsters> dragsterList = new ArrayList<Dragsters>();
dragsterList.add(new Dragsters("one", 0.6, 1000, 0.9, 3));