1.++运算符底层原理的分析
(1)对于局部变量
示例代码1:
package Demo01;
public class Test {
public static void main(String[] args) {
int a = 0;
a = a++;
System.out.println(a); //0
}
}
- 按照我们正常的逻辑,执行如下
- a=a
- a++
- 此时应该a=1
- 但为什么结果为0呢?
我们先来看一下它编译之后的字节码:
我们可以发现a=a+1被编译成了如上红框中的3条指令,分别是: