我对java比较陌生...
我有一个矩形数组和一个堆栈,里面装满了列表的一些矩形
int listNr;
Rectangle[] list = new Rectangle[100];
LinkedList stack = new LinkedList();
public void fillList(){
for (int i = 0; i < list.length; i++){
list[i] = new Rectangle(10,10);
}
}
public void fillStuff(){
stack.add(list[listNr]);
}
要从列表中访问 Rectangle 的坐标,我会调用“getX()”方法
list[listNr].getX();
这将返回 x 值。
但现在我想通过堆栈访问 Rectangle 的 x 坐标,我该怎么做?
我不明白为什么这不起作用:
stack.peek().getX();
我一直认为在我的情况下 stack[i] 和 array[i] 会引用同一个对象,因为......
System.out.println("stack "+stack.peek());
System.out.println("list "+list[listNr]);
会给我同样的输出:“list Rectangle@863d22”和“stack Rectangle@863d22”
如果我指的是同一个对象,我不应该能够使用对象的方法(如getter和setter)吗?还是我在这里犯了一个逻辑错误?