Java数据类型问题


public class Main {
  public static void main(String[] args) {
    int j = + -1234;
    System.out.printf("%d", j);
    System.out.println();
    System.out.println(j);
  }
}

结果是-1234。可以解释我为什么结果是-1234即将到来?

int j = + -1234;等效于:

j =(1) *(-1) * 1234(a)

现在:

-1 =(1) *(-1)(b)

因此将B代替A并获得:

j = -1 * 1234

所以j = -1234

在分配方程式中 和 - 充当一元oprators

实际上Java编译器take - as - 因此导致-1234。如果您尝试 - -1234,则将其处理为 - * - 1234,即1234。

public class Main {
        public static void main(String[] args) {
         int j = -+ -1234;
         System.out.printf("%d", j);
         System.out.println();
         System.out.println(j);

}}

这将打印1234。您不能使用 /- 因为它已经在Java中预定了以增加和减少操作

相关内容

最新更新