带有 "negative" 变量的三元运算

Ternary operation with a "negative" variable

负变量在三元中有什么作用?为什么输出是-10 is 10?

public class Ternary {
    public static void main(String[] args) {
        int i, k;
        i = -10;
        k = i < 0 ? -i : i;
        System.out.print(i + " is " + k);
    }
}

谁能解释一下这个场景下变量的作用? -i 是什么意思?

unary operation-(-(1))1。写法比较长

int i = -10, k = Math.abs(i);

它首先检查

-10 < 0,事实证明是这样。

因此,'k' 将被赋值为 -(-10),因为 i = -10。结果变成10.

那么你就有答案了

-10 是 10 因为 i 的值保持不变