-5

三元中的负变量有什么作用?为什么是输出-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意思?

4

2 回答 2

3

它是一元运算 。这是一个更长的写作方式-(-(1))1

int i = -10, k = Math.abs(i);
于 2017-06-03T16:03:24.630 回答
1

它首先检查

-10 < 0,结果是正确的。

因此,“k”将被赋值为 -(-10),因为 i = -10。结果变为 10。

那么你就有了答案

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

于 2017-06-03T16:20:34.873 回答