public class ComputerKit {
private ArrayList <ComputerPart> parts = new ArrayList();
//constructor
public ComputerKit(ComputerPart ... cp){
for(int x=0;x<cp.length;x++){
parts.add(x, cp);
}
}
//method toString
@Override
public String toString(){
String s = parts.get(0).toString();
return s;
}
Я пытаюсь добавить объекты ComputerPart в arraylist в конструкторе ComputerKit. Я хочу иметь возможность добавить столько компьютеров в ComputerKit, сколько захочу. Вот соответствующий код ComputerPart:Построение объектов при добавлении в ArrayList
public class ComputerPart {
//two instance variables representing a computerpart
private String item;
private double price;
//constructor
public ComputerPart(String i, double p){
setItem(i);
setPrice(p);
}
Моя проблема, я думаю, является то, что компилятор не знает, как добавить ComputerPart специально. Он может добавить объект, но если я оставлю его как общий объект, тогда, когда я вызову part.get (x) .toString(), я не получу частные переменные item и price в String.
Я буду продолжать работать над этим, надеюсь, я выясню это через 3 часа, когда его должный лололол! Спасибо!
'cp' содержит * все * части компьютера, поэтому вы добавляете их все в свой список несколько раз. –
Кроме того, вы можете переопределить метод 'toString()' в 'ComputerPart', чтобы предоставить нужный вам результат. –