x+++y的執行順序

轉載請說明出處,本文來自Android菜鳥:http://blog.csdn.net/android_cai_niao/article/details/42679699  QQ:2717521606


x+++y 的優先級,在學Java基礎的時候是有相關介紹的,但是一般能不記的東西我都不會去記,因爲人懶,所以這裏的優先級我就不記得了,但是當想知道的時候怎麼辦?寫代碼驗證一下即可,如下:

       

        int x = 1;
        int y = 1;
        int z = x+++y;
        System.out.println(x);
        System.out.println(y);
        // 輸出結果爲 2和1,說明x自增了,所以上面的表達式優先級爲int z = (x++) + y;

        如果想要y自增怎麼辦?加括號即可:int z = x + (++y);

在這裏想引出的問題是,遇到一些能寫代碼證明的知識,我們就大膽地寫代碼去證明,不要只用腦子想,腦子想往往是不準確的。另外還想要告訴大家,在真實的項目開發當中,不要寫如下類似的代碼:
int z = x+++y;
int z = i+++j+i+++k;
類似這些複雜的代碼,請加括號,或者直接分行寫,如:
int z = x+++y; 
如上表達式可寫成:
int z = (x++) + y;  
或:
x++;
int z = x + y;

如果筆試中你寫了x+++y這樣的代碼,如果面試官是我,那就這一道題,我就直接OUT。因爲實際工作中一般都是多人共同開發,
你寫這樣的代碼別人很難看懂,不利於團隊協作開發。



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