i++易错

直接上代码

    public static void main(String[] args) {
        int i = 0;
        change(i);
        i = i++;
        System.out.println("i = " + i);
    }
    public static void change(int i){
        i++;
    }

结果是:i = 0;

它是这样的,i++:它有一个中间的缓存的机制:

i++ (等价于)

int temp = i;

i = i + 1;

i = temp;

 

posted @ 2018-06-11 20:37  路漫漫,随风~  阅读(119)  评论(0编辑  收藏  举报