根据代码观看局部变量表与操作数栈变化

简单运算,却有意想不到的结果

局部变量表、虚拟机栈(操作数栈)运算刨析

举例:

public class Test {

public static void main(String[] args) {
int i = 1;
i = i++;
int j = i++;
int k = i + ++i * i++;
System.out.println("i=" + i);
System.out.println("j=" + j);
System.out.println("k=" + k);
}
}

 

运行结构是:

根据代码观看局部变量表与操作数栈变化

 

 

看具体操作:

根据代码观看局部变量表与操作数栈变化

 

根据代码观看局部变量表与操作数栈变化

 

 根据代码观看局部变量表与操作数栈变化

 

根据代码观看局部变量表与操作数栈变化

 

 

 

详细请跳转Java指令集