访问ArrayList中对象的属性

时间:2011-11-13 12:00:47

标签: java arraylist

我需要构建一个方法来查找给定ArrayList矩形中矩形区域的总和。

public class Homework {
public static void main(String[] args) {
    ArrayList<Rectangle> test = new ArrayList<Rectangle>();
    test.add(new Rectangle(10, 20, 30, 40));
    test.add(new Rectangle(10, 10, 30, 40));
    test.add(new Rectangle(20, 20, 40, 50));
    test.add(new Rectangle(20, 10, 50, 30));
    System.out.println(areaSum(test));
    System.out.println("Expected: 5900.0");
    System.out.println(areaAverage(test));
    System.out.println("Expected: 1475.0");
}

public static double areaSum(ArrayList<Rectangle> rects){
    //work goes here
}

到目前为止我所拥有的是:

public static double areaSum(ArrayList<Rectangle> rects){
    double totalArea = 0;
    for (Rectangle r : rects) {
        double area = (x + width) * (y + height);
        totalArea = totalArea + area;
    }
    return totalArea;
}

如何从测试器块构建的ArrayList中拉出矩形的尺寸?我是这个领域的新手,这是一个家庭作业,我似乎无法弄明白。

2 个答案:

答案 0 :(得分:1)

将计算区域的行更改为:

double area = r.getWidth() * r.getHeight();

答案 1 :(得分:1)

area = width * height(不是你拥有的)。纠正你的计算。

另外,对于更多“leetness”,请使用这个衬垫:

    totalArea += r.getWidth() * r.getHeight();