使用Java检查变量是否在两个数字之间

mat*_*jsW 6 java if-statement

我有这个代码的问题:

if (90 >>= angle =<< 180)
Run Code Online (Sandbox Code Playgroud)

错误说明是:

赋值的左侧必须是变量.

我明白这意味着什么,但我如何将上述代码转换为正确的代码?

Ale*_*ien 35

我在你的代码中看到了一些错误.
你可能意味着数学术语

90 <=角度<= 180,意味着角度在90-180范围内.

if (angle >= 90 && angle <= 180) {

// do action
}
Run Code Online (Sandbox Code Playgroud)


小智 5

//If "x" is between "a" and "b";

.....

int m = (a+b)/2;

if(Math.abs(x-m) <= (Math.abs(a-m)))

{
(operations)
}
Run Code Online (Sandbox Code Playgroud)

......

//如果总和不偶数,则必须使用浮点转换;

简单的例子:

//if x is between 10 and 20

if(Math.abs(x-15)<=5)
Run Code Online (Sandbox Code Playgroud)

  • 虽然在数学上很优雅(至少从特定的思维框架来看),但它有很多问题:所有读者都不清楚代码意图,任何错误都不会突出,源代码中的操作更多,代码中的操作更多字节码、浮点溢出一旦发生就会导致错误的答案。 (2认同)

小智 5

public static boolean between(int variable, int minValueInclusive, int maxValueInclusive) {
    return variable >= minValueInclusive && variable <= maxValueInclusive;
}
Run Code Online (Sandbox Code Playgroud)

判断整数是否在某个范围内的 Java 方法

  • 为什么不直接执行“return i &gt;= minValueInclusive &amp;&amp; i &lt;= maxValueInclusive”? (2认同)
  • 几乎不。检查后立即手动返回布尔值是没有意义的,而且它要简单得多(至少对我来说) (2认同)