从字节码角度分析 i++ 和 ++i

温馨提醒:本篇文章内容过于底层,不太熟悉的同学可以先学习 操作数栈

本篇文章从字节码的角度分析i++++j背后的逻辑!!

先给出四个可能会让你很晕~的例子,相信如果搞清楚i++++j原理的人可以很快知道每个变量最终的结果

下面再给出通过反编译后,该方法对应的字节码,这也是本篇文章分析的重点

如果不知道每个字节码指令对应什么意思,可以去查《虚拟机字节码指令表》

总结:

首先i++++i对于变量 i 的效果是等价的,都是使 i 增加 1

不同的在于这两个表达式的值: