使用循环在arrayList中设置值

时间:2012-03-17 20:54:14

标签: java

 ArrayList<Rectangle> list = new ArrayList<Rectangle>();
  for (int i=0; i < 10; i++)
  {
  list.add(new Rectangle(10,20));

  }

 for (int i=0; i < list.size(); i++ )
  {
     Rectangle rec = list.get(i);
     System.out.print("Element " + i +"  ");
     System.out.println("x=" + rec.getX()+"   y=" + rec.getY());
  }

这个输出给了我:

  Element 0  x=0.0   y=0.0
  Element 1  x=0.0   y=0.0
  Element 2  x=0.0   y=0.0
  Element 3  x=0.0   y=0.0
  Element 4  x=0.0   y=0.0
  Element 5  x=0.0   y=0.0
  Element 6  x=0.0   y=0.0
  Element 7  x=0.0   y=0.0
  Element 8  x=0.0   y=0.0
  Element 9  x=0.0   y=0.0

我想制作10个元素,每个元素的值分别为10和10。

2 个答案:

答案 0 :(得分:4)

constructor that gets two arguments就是这样:

Rectangle(int width, int height) 

没有设置x和y。

您可以使用此构造函数:

Rectangle(int x, int y, int width, int height) 

E.g。

list.add(new Rectangle(10,20,0,0));

或者在创建对象后设置x和y:

for (int i=0; i < 10; i++)
{
    Rectangle rect = new Rectangle();
    rect.setLocation(10, 20);
    list.add(rect);
}

答案 1 :(得分:2)

您正在使用的Rectangle构造函数需要宽度和高度。您没有设置x和y值。