gpt4 book ai didi

java - Java Point 类 getX() 或 getY() 是否自动转换?

转载 作者:太空宇宙 更新时间:2023-11-04 10:56:05 25 4
gpt4 key购买 nike

我正在尝试模拟物理对象的电影方程,因此我想根据加速度每十毫秒改变一次速度。这是对我不起作用的代码部分:(int delay = 10)

public static void main(String[] args) {
Point velocity = new Point();
Point acceleration = new Point(20.0, 0);
velocity.setLocation(10, 19);

w‌​hile (true) {
velocity.setLocation(velocity.getX() +
acceleration.getX() * 10 / 1000.0, 19);
System.out.println(velocity.getX());
}
}

这条线不改变速度的 x 或 y 是不寻常的。(加速度的 x 是 20,y 是 40.0 ;以防它们的范围产生差异,我怀疑它确实如此)当我打印acceleration.getX()*延迟/1000.0时,它会打印0.0,当我在用其金额替换acceleration.getX()后尝试打印它时,它会打印实际金额。

有人知道这段代码有什么问题吗?
getX() 是自动转换的还是其他什么?

最佳答案

正如您所见

Point Documentation

定义点的值存储为整数,因此如果您要存储的 double 值介于 0.0 和 1.0 之间(如您的示例中的情况),它将转换为 0。

关于java - Java Point 类 getX() 或 getY() 是否自动转换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47314762/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com