如何创建一个循环以添加所有这些盒子的体积?

时间:2018-08-20 05:01:20

标签: java loops

我正在大学一年级,似乎无法解决这个问题,我需要使用循环返回所有盒子的总体积。给出的提示是

double totalVolume=0;
for(Box bx:boxes)
{
    totalVolume=totalVolume+'the volume of box'
}
System.out.println("Total volume="+totalVolume); 

但是,在totalVolume = totalVolume +'框线的体积上,我遇到了错误,无法解决任何问题。抱歉,这是一个非常简单的修复程序。

主要类别:

public static void main(String[] args) 
{
    Box a=new Box(40,20,20);
    Box b=new Box(40,30,20);
    Box c=new Box(40,20,30);
    Box d=new Box(50,30,30);
    Box e=new Box(60,20,10);
    Box f=new Box(80,10,10);

    ArrayList<Box>boxes=new ArrayList<>();
    boxes.add(a);
    boxes.add(b);
    boxes.add(c);
    boxes.add(d);
    boxes.add(e);
    boxes.add(f);

    //Box x=boxes.get(1);
    //Box y=boxes.get(0);
    Box v=boxes.get(0);
    Box w=boxes.get(1);
    Box x=boxes.get(2);
    Box y=boxes.get(3);
    Box z=boxes.get(4);
    Box u=boxes.get(5);
    u.print();
    v.print();
    w.print();
    x.print();
    y.print();
    z.print();

    for(Box bx:boxes)
    {
        bx.print();
    }

    double totalVolume=0;
    for(Box bx:boxes)
    {
        totalVolume=totalVolume+'the volume of box'
    }
    System.out.println("Total volume="+totalVolume);
}

}

盒子类

class Box
{
  int width;
  int height;
  int depth;

  public Box(int width, int height, int depth)
  {
      this.width=width;
      this.height=height;
      this.depth=depth;
  }

  public void print()
  {
      System.out.println("Width="+width);
      System.out.println("Height="+height);
      System.out.println("Depth="+depth);
      System.out.println("Volume="+volume());
  }

  public int volume()
  {
      return (width*height*depth);
  }


}

1 个答案:

答案 0 :(得分:4)

每个Box类都有一个volume方法。如果您有一个框 instance object ,则可以在其上调用volume方法

box.volume();

因此,您的代码必须是

for(Box bx : boxes) {
    totalVolume = totalVolume + bx.volume();
}