我正在大学一年级,似乎无法解决这个问题,我需要使用循环返回所有盒子的总体积。给出的提示是
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);
}
}
答案 0 :(得分:4)
每个Box
类都有一个volume
方法。如果您有一个框 instance 或 object ,则可以在其上调用volume
方法
box.volume();
因此,您的代码必须是
for(Box bx : boxes) {
totalVolume = totalVolume + bx.volume();
}