使用三元运算符将if语句转换为java语句

问题描述 投票:0回答:2

是否可以使用三元运算符转换以下Java代码:

if (x > 0) {
    a = 100;
    b = 100;
} else {
    a = 1;
    b = 1;
}
java algorithm ternary
2个回答
3
投票
a = b = x > 0 ? 100 : 1;

但仅因为您为ab分配了相同的值。

在一般情况下,您需要为要分配给每个变量的每个三元条件运算符:

a = x > 0 ? 100 : 1; b = x > 0 ? 100 : 1;


2
投票
a = x > 0 ? 100 : 1; b = a;

这是有效的,因为ab的分配逻辑碰巧是相同的。如果不是这种情况,我们将需要两个单独的三元表达式:

a = x > 0 ? 100 : 1;
b = x > 0 ? 100 : 1;
© www.soinside.com 2019 - 2024. All rights reserved.