Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java If语句不更新同一类中的私有字段_Java_If Statement - Fatal编程技术网

Java If语句不更新同一类中的私有字段

Java If语句不更新同一类中的私有字段,java,if-statement,Java,If Statement,我从课堂上得到了以下代码: private int velocity = 0; public void velocityManagement(int speed){ if (speed > 0){ System.out.println("Pressing gas pedal"); velocity += speed; System.out.println("Velocity increased to

我从课堂上得到了以下代码:

private int velocity = 0;

public void velocityManagement(int speed){
        if (speed > 0){
            System.out.println("Pressing gas pedal");
            velocity += speed;
            System.out.println("Velocity increased to " + velocity + " km/h");
        } else{
            System.out.println("Pressing break");
            velocity -= speed;
            System.out.println("Velocity decreased to " + velocity + " km/h");
        }
这就是我在主类中使用它的方式:

car.velocityManagement(10);
car.velocityManagement(15);
car.velocityManagement(-20);
预期产出:

  • 踩油门
  • 速度增加到10公里/小时
  • 踩油门
  • 速度增加到25公里/小时
  • 压断
  • 速度降至5公里/小时
实际产量:

  • 踩油门
  • 速度增加到10公里/小时
  • 踩油门
  • 速度增加到25公里/小时
  • 压断
  • 速度降至45公里/小时

当速度为负数时,减去负数,与添加正数相同:

// When speed is negative, this corresponds to adding 
// the absolute value of speed to velocity
velocity -= speed;
你应该加上这个负数。只有print语句应该出现在
if-else
语句中

public void velocityManagement(int speed){
        if (speed > 0){
            System.out.println("Pressing gas pedal");
            System.out.println("Velocity increased to " + velocity + " km/h");
        } else{
            System.out.println("Pressing break");
            System.out.println("Velocity decreased to " + velocity + " km/h");
        }
        velocity += speed;
}

最好的

@WojtekT在我点击标签时点击错误。对不起,因为负号…总是:速度+=速度;因为10+-10=0;)