Java 如何多次调用方法来更改变量?
我试图调用Java 如何多次调用方法来更改变量?,java,methods,repeat,Java,Methods,Repeat,我试图调用speed变量上的accelerate方法,该变量在每次调用时为speed变量添加5。我可以在构造函数中执行一次: public int getAccelerate() { accelerate = (speed + 5); return accelerate; } 并使用 System.out.println(car1.getAccelerate()); 但这只工作一次,如果速度变量为100,则显示105 我的问题是:每次调用accelerate方法以反映新的速度
speed
变量上的accelerate
方法,该变量在每次调用时为speed
变量添加5。我可以在构造函数中执行一次:
public int getAccelerate() {
accelerate = (speed + 5);
return accelerate;
}
并使用
System.out.println(car1.getAccelerate());
但这只工作一次,如果速度变量为100,则显示105
我的问题是:每次调用accelerate
方法以反映新的速度值时,如何更新速度变量
调用它5次可以得到输出
105105
105
105
105 我试图得到输出的地方 105
110
115
120
125
通过调用相同的方法5次。想想发生了什么。您的方法采用
speed
,向其添加5
,并将该值放入变量accelerate
。然后返回加速
。因此,每次您都会根据速度
更改加速
,但您永远不会更改速度
!因此,例如,如果speed
为100
,第一次调用将返回100+5
,第二次调用将返回100+5
,依此类推
如果要使其正常工作,请每次更改“加速”:
public int getAccelerate()
{
accelerate = (accelerate + 5);
return accelerate;
}
public int getAccelerate()
{
speed = (speed + 5);
return speed;
}
或者您可以每次更改速度:
public int getAccelerate()
{
accelerate = (accelerate + 5);
return accelerate;
}
public int getAccelerate()
{
speed = (speed + 5);
return speed;
}
想想发生了什么。您的方法采用
speed
,向其添加5
,并将该值放入变量accelerate
。然后返回加速
。因此,每次您都会根据速度
更改加速
,但您永远不会更改速度
!因此,例如,如果speed
为100
,第一次调用将返回100+5
,第二次调用将返回100+5
,依此类推
如果要使其正常工作,请每次更改“加速”:
public int getAccelerate()
{
accelerate = (accelerate + 5);
return accelerate;
}
public int getAccelerate()
{
speed = (speed + 5);
return speed;
}
或者您可以每次更改速度:
public int getAccelerate()
{
accelerate = (accelerate + 5);
return accelerate;
}
public int getAccelerate()
{
speed = (speed + 5);
return speed;
}
什么是
速度
和加速
?请注意,您只是将一个新值重新分配给加速
,而速度
没有改变(因此您总是得到相同的返回值)。什么是速度
和加速
?请注意,您只是将一个新值重新分配给accelerate
,而speed
没有更改(因此您总是得到相同的返回值)。请使用x+=5
而不是x=(x+5)
@ShaunTighe。没问题,很乐意帮助!请记住向上投票并接受。请使用x+=5
而不是x=(x+5)
@ShaunTighe没问题,乐意帮助!请记得投票并接受。