当前位置: 首页 > 知识库问答 >
问题:

如何在没有if语句的情况下做出决定

洪子晋
2023-03-14

我正在上一门Java课程,我们还没有正式学习if语句。我在学习,看到了这个问题:

public static double pay (double salary, int hours) {

     double pay = 0;

     for (int i = hours; i > 8; i --) {
         pay += (salary * 1.5);
     }
}

共有1个答案

柳钟展
2023-03-14

为了避免直接使用诸如ifwhile之类的流控制语句,可以使用Math.minMath.max。对于这个特殊的问题,使用循环也不是有效的。

他们可能在技术上使用if语句或等效语句,但您已经进行的许多其他标准库调用也是如此:

public static double pay (double salary, int hours) {
     int hoursWorkedRegularTime = Math.min(8, hours);
     int hoursWorkedOverTime = Math.max(0, hours - 8);
     return (hoursWorkedRegularTime * salary) +
            (hoursWorkedOverTime  * (salary * 1.5));
}
 类似资料:
  • 我如何在 Angular 中编写适用于 3 个选项的开关大小写或 if 语句, 我已经试过了,但需要添加所有3个选项。

  • 问题内容: 我想知道是否有一种方法可以将布尔值转换为int而不使用if语句(以免破坏管道)。例如,我可以写 但是我想知道是否有一种方法可以不使用if语句,例如Python的 我也觉得你可以做 但是,这会创建一个额外的对象,因此它确实很浪费,而且我发现它比if语句方式还要慢(它不一定效率低下,只是有一个弱点)。 问题答案: 除了if外,不能使用布尔值。但是,这并不意味着在装配级别将有一个分支。 如果

  • 我一直在尝试让开关语句在不嵌套的情况下工作,但它不起作用,因为它链接到我所做的if语句。 有人知道我如何在if语句仍然有效的情况下将boardType switch语句移到duration switch语句之外吗?非常感谢。

  • 我正在从文档中学习反应,但不确定在这个例子中超级()做什么。通常,它不需要传递给创建新实例的参数,然后调用React吗?组件的构造函数方法将这些参数合并到实例中?没有任何争论它是做什么的?

  • 我对if/elif语句有这个烦人的问题。我是新手,抱歉愚蠢的问题。我试图找到一个修复,但没有人有它的Python。所以,如果两个条件都是True,我希望程序执行子句中的代码。据我所知,只有当两个条件都为True时,子句中的代码才会执行,对吗?不过,这在我的代码中似乎没有发生。 因此,和变量之前就已经设置好了。在这个游戏中,发生的是:用户选择偶数或奇数,并输入一个从0到5的数字。然后,计算机使用从0

  • 如何使th:if语句与两个表达式匹配? 如何检查测试。host is=to th:field=“*主机”?这可能吗?