【发布时间】:2020-11-23 00:50:30
【问题描述】:
我正在尝试创建一个名为 hasBiggerTank 的 boolean 方法,如果 size 大于或等于 4 它有足够的燃料,否则没有足够的燃料.
我试图在 main 方法中调用布尔方法的结果,但我得到的结果是 car1 和 car2 在应该输出时打印出单词 true
预期输出:
“goodfuel consumptions”加上car2应该是假的。
我是 Java 新手,需要一些帮助。
// method
public boolean hasBiggerTank(int size) {
if (size <= 4) {
return true;
} else {
return false;
}
}
public class Start {
public static void main(String[] args) {
boolean hasBiggerTank = true;
int size = 0;
if (size <= 4) {
System.out.println("Good fuel consumptions");
} else {
System.out.println("Not enough fuel");
}
Car car1 = new Car();
car1.hasBiggerTank(6);
System.out.println("Car 1 efficiency: " + car1.hasBiggerTank(size));
Car car2 = new Car();
car2.hasBiggerTank(2);
System.out.println("Car 2 efficiency: " + car2.hasBiggerTank(size));
}
}
【问题讨论】:
-
if(size <= 4),在该行之前没有为size分配值,因此出现错误 -
@IsmaelPadilla - 变量
size是函数中的参数,正在检查中... -
@AyushGarg - 上述 cmets 指的是问题的早期版本,其中变量
size未在main中初始化。查看问题历史记录。 -
@Mazzie - 如果您修改问题以用较新的代码/问题替换较早的代码/问题,就会出现这种混淆。 请不要这样做 ....以后。
-
哦,好的@StephenC,感谢您解决这个问题。