我注意到您无法像这样比较2点:

if (pointOne == pointTwo) { }


我总是必须这样做:

if (pointOne.x == pointTwo.x && pointOne.y == pointTwo.y) { }


我真的很想知道为什么您不能使用第一个示例,有人回答吗?

最佳答案

您必须使用类equalsPoint方法。检查this

如果使用==,则实际上是在检查两个Point对象的内存地址是否相同。

在Java中,所有类都是从Object派生的,您可以重写equals方法,从而提供一种方便的方法来检查实际上是否是同一Object派生类的两个对象是否相同。

09-27 11:14