java 中的递减和赋值运算符
Decrement and assignment operator in java
有人可以解释为什么下面代码的输出是 1。
int i = 1;
i=i--;
System.out.println(i); // 1
i--
执行以下步骤:
- return的值
i
- 将
i
减 1
所以语句 i = i--
执行以下操作:
i
被 return 编辑(语句现在等于 i = 1
)
i
递减(i现在为0)
- 语句(赋值)现已完成(
i = 1
)
最后i
是1
为了更清楚一点,您可以说 i = i--;
行与以下代码几乎相同:
int j = i;
i = i-1;
i = j;
有人可以解释为什么下面代码的输出是 1。
int i = 1;
i=i--;
System.out.println(i); // 1
i--
执行以下步骤:
- return的值
i
- 将
i
减 1
所以语句 i = i--
执行以下操作:
i
被 return 编辑(语句现在等于i = 1
)i
递减(i现在为0)- 语句(赋值)现已完成(
i = 1
)
最后i
是1
为了更清楚一点,您可以说 i = i--;
行与以下代码几乎相同:
int j = i;
i = i-1;
i = j;