令我迷惑的 i++
我在准备面试时遇见了着样一道题:
java 代码
- public class Inc {
- public static void main(String[] args) {
- Inc inc = new Inc();
- int i = 0;
- inc.fermin(i);
- i = i++; //陷阱
- System.out.println(i);
- }
- void fermin(int i){
- i++;
- }
- }
令人不解的是最后的输出结果为什么不是我所期望的 1 ,而是 0 。希望能有人用通俗易懂的语言,深入地帮我解释一下,谢谢。