我尝试在accelerate
变量上调用speed
方法,每次调用speed
变量时都会向public int getAccelerate() {
accelerate = (speed + 5);
return accelerate;
}
变量添加5。我能够在构造函数中执行一次:
System.out.println(car1.getAccelerate());
并使用
显示accelerate
但只能使用一次,如果速度变量为100则显示105.
我的问题是:每次调用IsDeleted
方法以反映新的速度值时,如何更新速度变量?
调用它5次给我输出
105
105个
105个
105个
105
我正在尝试获取输出
105
110个
115个
120个
125
通过调用相同的方法5次。
答案 0 :(得分:2)
想想发生了什么。您的方法需要speed
,向其添加5
,并将该值放入变量accelerate
中。然后它返回accelerate
。因此,每次根据accelerate
更改speed
,但您永远不会更改speed
!例如,如果speed
为100
,则第一个调用将返回100 + 5
,第二个调用将返回100 + 5
,依此类推。
如果您希望此功能正常工作,请每次更改加速:
public int getAccelerate()
{
accelerate = (accelerate + 5);
return accelerate;
}
或者你每次都可以改变速度:
public int getAccelerate()
{
speed = (speed + 5);
return speed;
}