如何在主方法“static void”中调用布尔方法的结果

v8wbuo2f  于 2021-07-08  发布在  Java
关注(0)|答案(3)|浏览(340)

我想创造一个 boolean 调用的方法 hasBiggerTank 如果尺寸大于或等于4,它就有足够的燃料,否则就没有足够的燃料。
我试图在main方法中调用布尔方法的结果,但得到的结果是car1和car2都打印出单词 true 什么时候应该输出
预期产量:
“goodfuel consumpions”加上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));
    }
}
z4iuyo4d

z4iuyo4d1#

public static boolean hasBiggerTank(int size) {            \\method
        if (size <= 4) {
            return false;
        }
        return true;
} 

public class Start {
    public static void main(String[] args) { 

        int size = java.util.Scanner.nextInt();
        boolean hasBiggerTank = hasBiggerTank(size);
        if(hasBiggerTank) {
            System.out.println("Good Big Fuel Tank");
        }
        else { 
           System.out.println("Not big enough fuel Tank"); 
        }
   }
}

这是如何从main方法调用布尔返回方法。

yx2lnoni

yx2lnoni2#

好吧,我认为你得到错误答案的真正原因是你的逻辑 hasBiggerTank 方法不正确。
基于方法的名称和您使用它的方式,我认为它应该返回 true 当且仅当汽车的油箱尺寸大于 size 争论。
但是如果你看一下代码,那不是你已经实现的。相反,您的方法忽略了汽车的油箱大小,只是测试用户是否(实际上)输入了小于或等于4的数字。
解决方案:思考 hasBiggerTank 我真的应该。。。并实施。
但这整件事也有点奇怪。在现实世界中,汽车的油箱大小和燃油效率不是一回事。但也许这只是一个不现实的要求,为家庭作业的人工制品。。。

nbnkbykc

nbnkbykc3#

正如你刚才所说:
如果尺寸大于或等于4,它就有足够的燃料,否则就没有足够的燃料。
如果大小大于或等于4,则方法 hasBiggerTank 我得回去了 true 问题是你的身体状况 hasBiggerTank 方法,您需要将其更改为:

public static boolean hasBiggerTank(int size) {
    if (size >= 4) {
        return true;
    } else {
        return false;
    }
}

下一个问题是你的 main() 方法,再次以错误的格式放置条件,应将其更改为:

int size = 0;
if (size >= 4) {
    System.out.println("Good fuel consumptions");
} else {
    System.out.println("Not enough fuel");
}

在这里根据您的问题,我们正在检查大小是否大于或等于4,如果它是真的,那么良好的油耗将被打印出来。

相关问题