3
public void setPunt(int index){
    if(index >= 0 && index < PuntenLijst.size()){
        x = 3;
        y = 5;
    }
}

我在名为 PuntenLijst 的数组列表中有一组对象实例。通过这种方法,我想使用 index 参数在 ArrayList 中定位对象,并将对象实例中定义的变量 x 和 y 设置为 3 和 5。

这就是我已经走了多远。有没有人可以帮助我?

非常感谢!

4

5 回答 5

6

在您的对象中创建一个 setX 和 setY 方法。使用它们来更改值。

public void setPunt(int index){
if(index >= 0 && index < PuntenLijst.size()){
    PuntenLijst.get(index).setX(3);
    .... setY(5);
}

}

于 2012-10-16T21:23:01.120 回答
1
public void setPunt(int index){
if(index >= 0 && index < PuntenLijst.size()){

  (ClassOfObjects)PuntenLijst.get(index).x=3;
  (ClassOfObjects)PuntenLijst.get(index).y=5;


  }
}
于 2012-10-16T21:26:14.953 回答
0

询问Punt存储在给定索引处的列表:请参阅http://docs.oracle.com/javase/6/docs/api/java/util/List.html#get%28int%29

然后使用Punt类提供的方法来修改其内部状态。我的猜测是它有一个setX()和一个setY()方法(如果你需要改变它的坐标,它应该有这些方法)。

于 2012-10-16T21:19:43.510 回答
0

你的意思是这样的吗?

ArrayList<Object> PuntenLijst= new ArrayList<>(); // your arrayList

public void setPunt(int index){
    if(index >= 0 && index < PuntenLijst.size()){
        Object myObj = PuntenLijst.get(index);
        myObj.setX(3);
        myObj.setY(5);
    }
}
于 2012-10-16T21:20:18.543 回答
0

查看 ArrayList 上的文档http://docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html

在您的情况下,您需要执行以下操作:

   if(index >= 0 && index < puntenLijst.size()){
        puntenLijst.get(index).x = 3;
        puntenLijst.get(index).y = 5;
    }

请注意以下更改: puntenLijst 不应大写。x 和 y 必须是公共变量才能像上面那样分配值。

于 2012-10-16T21:20:23.393 回答