java.awt.Point翻译un-doing本身

时间:2015-09-07 23:06:45

标签: java point

我在start类型endjava.awt.Point中都有以下代码。

start.translate(-1, 0);
end.translate(1, 0);

但是,当我使用start = (0, 0) end = (0, 0)运行此代码时,startend均为(0, 0)。为什么会这样,只有我吗?

编辑更奇怪的是,当我查看第2行之前和第1行之后的坐标时,startend点都在(-1, 0);基本上,translate(int x, int y)翻译了两个点!

1 个答案:

答案 0 :(得分:2)

唯一可能发生的方法是startend变量指向完全相同的对象。因此,在点(0,0)在x坐标中转换为-1,然后再转换为+1之后,再次得到(0,0)。检查创建startend对象的代码。