java.awt.Point translate本身不执行

java.awt.Point translate本身不执行,java,point,Java,Point,我有以下代码,其中包含start和end类型java.awt.Point start.translate(-1, 0); end.translate(1, 0); 但是,当我使用start=(0,0)end=(0,0)运行此代码时,start和end结果都是(0,0)。为什么会发生这样的事,是不是只有我 编辑更奇怪的是,当我查看第2行之前和第1行之后的坐标时,两个点开始和结束都位于(-1,0);本质上,翻译(intx,inty)翻译了这两个点 发生这种情况的唯一方法是start和end变量指向

我有以下代码,其中包含
start
end
类型
java.awt.Point

start.translate(-1, 0);
end.translate(1, 0);
但是,当我使用
start=(0,0)end=(0,0)
运行此代码时,
start
end
结果都是
(0,0)
。为什么会发生这样的事,是不是只有我


编辑更奇怪的是,当我查看第2行之前和第1行之后的坐标时,两个点
开始
结束
都位于
(-1,0)
;本质上,
翻译(intx,inty)
翻译了这两个点

发生这种情况的唯一方法是
start
end
变量指向完全相同的对象。因此,在点(0,0)在x坐标系中平移-1,然后再平移+1之后,再次得到(0,0)。检查创建
开始
结束
对象的代码。

是否
开始
结束
指向同一对象?这就解释了为什么它们都被变换,在x轴上平移它们-1和1后,结果是(0,0)。请显示创建
开始
结束
对象的代码。@MaximilianGerhardt实际上,这就是问题所在!我刚刚检查了我的代码,它们引用的是数组中的同一个对象!把这个作为答案贴出来,我会接受的。