Luk*_*uke 7 java precision point awt
正如您在Oracle Documentation for java.awt.Point中看到的那样,x和y存储为int
.但是,getX
并getY
返回double
.虽然有一种setLocation
方法需要2 double
种类型,但没有构造函数可以执行.此外,无论如何double
都会被截断到int
内部.
有这么好的理由吗?你可能会避免投上setLocation
由具有采取的方法double
类型,但是当你打电话给你有相反的问题getX
和getY
.通过返回double
from getX
和,也会错误地表示Point类的精度getY
.
因为它从用于Graphics2D抽象类的java.awt.geom.Point2D扩展而来.它是出于兼容性原因而实现的,因为在此之前,java只支持java.awt.Graphics,其中所有方法都是基于int的.