如何将以下代码简化为一行(不带if-else
语句)?
public static void main(String[] args)
{
boolean result;
boolean a = false;
boolean b = false;
boolean isEmpty = false;
if (a) {
result = isEmpty && !b;
System.out.println("if " + (isEmpty && !b));
} else {
System.out.println("else " + !b);
result = !b;
}
System.out.println(result);
}
Run Code Online (Sandbox Code Playgroud)
如果a
是true
,您必须检查isEmpty
AND !b
是否都是true
.如果a
是false
(或者!a
是true
),这足以检查!b
是true
.
因此,您可以使用以下命令替换if语句的逻辑:
result = !b && (isEmpty || !a);
Run Code Online (Sandbox Code Playgroud)