面試題----i++

面試題1:

內容:

public static void main(String args[]){


        System.out.println("Hello");

        int i=1;
        i=i++;      // 1 
        int j=i++;  //2 
        int k=i+ ++i * i++; //3
        System.out.println("i="+i);
        System.out.println("j="+j);
        System.out.println("K="+k);
    }
}

 

輸出結果:

Hello
i=4
j=1
K=11

結果分析:

代碼中1位置的 i = i++ 代碼相當於下面的代碼

int temp = i;
i = i+1;
i = temp;

所有此時的i的值爲1;

下一行代碼 int j = i ++ ;i先複製給j 然後自增。所以此時j =1 ;i= 2;

k= i+ ++i * i++;  k = 2 + (2+1)* 3 =  11 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章