java.awt.Point 翻译取消自身

标签 java point

我有以下代码,其中 startend 均为 java.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) 翻译了两个点!

最佳答案

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

关于java.awt.Point 翻译取消自身,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32447051/

相关文章:

java - 在 Eclipse 编辑器中显示中文注释

java - jvm中java热点类的加载

java - 针对 SSE2 之前的处理器的 Java 运行时如何实现浮点基本操作?

C# - 将 PointF 转换为 Point

java - 如何获取JButton的(x,y)坐标

java - 导入未使用的包不好吗?

java - 如何在 Android 中向 passwordToggleEnabled 添加填充?

ios - 核心图-iOS触摸事件很难在图形上选择点

arrays - 在 Point Chart Flutter 中实现 List

java - 通过一组点近似 R2 线