gpt4 book ai didi

java - 即使未在 return 语句中指定任何返回值,也会向调用者返回真值

转载 作者:行者123 更新时间:2023-12-04 10:19:15 25 4
gpt4 key购买 nike

public class FlourPacker {
public static boolean canPack(int bigCount, int smallCount, int goal) {
if ((bigCount < 0 || smallCount < 0 || goal < 0))
return false;
if ((bigCount * 5) < goal)
return ((goal - (bigCount * 5)) <= smallCount);
else return ((goal % 5) <= smallCount);
}

public static void main(String[] args) {
System.out.println(canPack(3, 0, 11));
}
}
所以在这个问题 bigCount值(value) 5 和 smallCount值 1,我应该尝试获得目标数。我不能用 bigCount 超越(目标)但我可以用 smallCount .
但我的问题是,最后一个 怎么进来的? if else 声明我不需要放 truefalse为了返回?当我运行它(即我创建的主要方法)时,它告诉我 true即使我从来没有放 return true在代码中。

最佳答案

您不需要指定 truefalse具体来说。如果你这样做了,那么你所有的 if 语句都必须是 if (true)if (false) .

因此,相反,您在 if 语句中编写了一个计算结果为 true 的表达式。或 false (以您的示例为例,在插入变量中的值后,if ((bigCount * 5) < goal) 将等效于 if (true)if (false))。

同样的想法也适用于 return 语句( return ((goal % 5)<= smallCount) 将变成 return truereturn false )。

关于java - 即使未在 return 语句中指定任何返回值,也会向调用者返回真值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60937642/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com