用于在Java中存储对象的ArrayList是';我添加对象时不工作
我正在解决一个来自演习的演习:货舱。我应该将一个类的对象存储到另一个类的用于在Java中存储对象的ArrayList是';我添加对象时不工作,java,oop,arraylist,Java,Oop,Arraylist,我正在解决一个来自演习的演习:货舱。我应该将一个类的对象存储到另一个类的ArrayList,但每当我使用this.suitcases.add(行李箱)方法时,它在打印对象时从不添加对象。我怎样才能解决这个问题?任何帮助都将不胜感激。谢谢 程序的输出应如下所示: 2个手提箱(7公斤) 我的输出: 0个手提箱(0公斤) 我并没有仅仅根据你的代码来阅读练习题,你的问题在于你在等待中的状态,特别是在AddCasts中 public void addSuitcase(Suitcase suitcase){
ArrayList
,但每当我使用this.suitcases.add(行李箱)
方法时,它在打印对象时从不添加对象。我怎样才能解决这个问题?任何帮助都将不胜感激。谢谢
程序的输出应如下所示:
2个手提箱(7公斤)
我的输出:
0个手提箱(0公斤)
我并没有仅仅根据你的代码来阅读练习题,你的问题在于你在等待中的状态,特别是在AddCasts中
public void addSuitcase(Suitcase suitcase){
if(suitcase.totalWeight() + minWeight >= maxWeight){
minWeight = minWeight + suitcase.totalWeight();
this.suitcases.add(suitcase);
}
}
应该是
public void addSuitcase(Suitcase suitcase){
if(suitcase.totalWeight() + minWeight <= maxWeight){
minWeight = minWeight + suitcase.totalWeight();
this.suitcases.add(suitcase);
}
公共行李箱(行李箱){
如果(手提箱。总重量()+最小重量)我很确定手提箱。总重量()+最小重量>=maxWeight
应该是手提箱。总重量()+最小重量,所以它只是一个打字错误:/我已经盯着它看了这么久了。。谢谢你总是很好,理解问题,然后回答。
public class Item {
private String name;
private int weight;
public Item(String name, int weight){
this.name = name;
this.weight = weight;
}
public String getName(){
return this.name;
}
public int getWeight(){
return this.weight;
}
public String toString(){
return this.name + " (" + this.weight + " kg)";
}
}
public class Main {
public static void main(String[] args) {
// You can use the main to test your classes!
Item book = new Item("Lord of the rings", 2);
Item phone = new Item("Nokia 3210", 1);
Item brick = new Item("brick", 4);
Suitcase adasCase = new Suitcase(10);
adasCase.addItem(book);
adasCase.addItem(phone);
Suitcase pekkasCase = new Suitcase(10);
pekkasCase.addItem(brick);
Hold hold = new Hold(1000);
hold.addSuitcase(adasCase);
hold.addSuitcase(pekkasCase);
System.out.println(hold);
}
}
public void addSuitcase(Suitcase suitcase){
if(suitcase.totalWeight() + minWeight >= maxWeight){
minWeight = minWeight + suitcase.totalWeight();
this.suitcases.add(suitcase);
}
public void addSuitcase(Suitcase suitcase){
if(suitcase.totalWeight() + minWeight <= maxWeight){
minWeight = minWeight + suitcase.totalWeight();
this.suitcases.add(suitcase);
}