首页 > 解决方案 > 如果员工高于或低于某个温度,我将如何返回 true?

问题描述

如果他们的体温超出 32-38 的范围,并且他们有新的咳嗽或嗅觉丧失,我需要使程序返回 true(意味着员工生病了)。否则,员工没有生病(需要返回false。)

到目前为止,这是我的代码:

public boolean returntowork(float temperature, boolean newCough, boolean lossOfSmell) {
    if (temperature >= 38 && newCough || lossOfSmell);
    return true;

}

标签: javareturnboolean

解决方案


你很亲密。做这个。

return ((temperature >= 38 && newCough) || lossOfSmell);

该表达式是一个布尔值,因此您可以直接返回它,而不是使用if.

编辑:您可以编写所需的任何逻辑表达式。例如,您可以这样做:

return ( (temperature >= 38 && newCough) ||
         temperature <= 32 ||
         lossOfSmell
       );

如果你想拒绝太冷的温度、太高的温度导致咳嗽或失去嗅觉。

如果您只想在咳嗽时拒绝太冷的温度,您可以这样做。

return ( (temperature >= 38 && newCough) ||
         (temperature <= 32 && newCough) ||
         lossOfSmell
       );

这里的重点是使您的临床指标的代码非常易于阅读。在现实世界中,您可能需要医生来检查您的代码;你希望她有机会理解它。

&&而且,专业提示,始终使用括号将您的和运算符组合在一起||。不要试图记住他们的运算符优先级或依赖它。


推荐阅读