【发布时间】:2015-11-01 03:59:54
【问题描述】:
我在创建解决简单运动学的程序时遇到问题。
我运行程序并发现字段没有被正确修改。这是 我初始化对象和设置变量的程序的碎片。
public class LinearConstantAcceleration1DKinematics {
private double distance;
private double speed;
private double acceleration;
private double time;
public LinearConstantAcceleration1DKinematics() {
/* initialize the object */
distance = 0;
speed = 0;
acceleration = 0;
time = 0;
}
public void setS(double s) {
this.distance = s;
}
//continue with 3 more setters which is created in the same way ,i have omitted them here
public double getU(){
double u_ans;
u_ans = (distance - 1/2 *acceleration*time*time )/time;
return u_ans;
}
}
这是使用方法的主要部分
LinearConstantAcceleration1DKinematics kinematics = new LinearConstantAcceleration1DKinematics();
kinematics.setS(175);
kinematics.setA(10);
kinematics.setT(5);
System.out.printf(%f\n", kinematics.getU());
结果是 35,这是不正确的。非常感谢您的帮助。
【问题讨论】:
-
你能发布完整的代码吗?因为 System.out.printf(%f\n", kinematics.getU()); 没有编译,也没有 setA() 或 setT()
-
HaHaman,你还没有发布完整的代码。
标签: java integer-division