Java編程那些事兒27—其它運算子

來源:互聯網
上載者:User
 

Java編程那些事兒27—其它運算子鄭州遊戲學院 陳躍峰出自:http://blog.csdn.net/mailbomb 4.6 其它運算子         對於無法歸類,或者單獨佔一類的運算子,將在下面進行介紹。l ++、--這兩個運算子是程式中的遞增和遞減運算子。其意義參照以下範例程式碼:         int n = 0;         n++; // n = n + 1         System.out.println(n);n++的意義就是對原來變數n的值加1以後再賦值給自身,因為原來變數n的值是0,加1以後則變成1。同理,遞減運算子的意義也是這樣,範例程式碼:         int m = 0;         m--;         System.out.println(m);m—的意義就是對原來變數m的值減1以後再賦值給自身,則m的值變成-1。需要注意的是++和—只能操作變數,而不能操作其他的內容,以下使用都是錯誤的:         int a = 0;         int b = 0;         (a + b)++;   //錯誤         final int M = 1;         M++;      //錯誤         5++;      //錯誤在實際書寫時,++和—既可以寫在變數的前面,也可以寫在變數的後面,例如:         int k = 0;         k++;         ++k;同理,--也可以這樣,那麼這些在實際使用中有什麼區別呢?其實對於變數的值來說,沒有區別,也就是++無論寫後面還是寫前面,變數的值肯定增加1,--無論寫在後面還是前面,變數的值都減1。其最大的區別在於整個式子的值,如n++,規則如下:         1)++或—寫在變數前面,則該式子的值等於變數變化以後的值。         2)++或—寫在變數後面,則該式子的值等於變數變化以前的值。範例程式碼如下:         int n = 1;         int m= 1;         n++;    //n的值變為2         ++m;   //m的值變為2         int k = n++; //n的初始值是2,則n++的值是2,結果n的值為3,k的值為2         int j = ++m; //m的初始值是2,則++m的值是3,結果m的值是3,j的值為3同理,--也是這樣。下面是一個稍微綜合點的樣本:         int a = 0;         int b = 0;         a = b++; //a為0,b為1         a = ++b; //a為2,b為2         b = a++; //a為3,b為2         a = ++b; //a為3,b為3說明:注釋部分為對應行代碼運行以後,a和b的值。在程式開發中,可以使用該區別簡化代碼的書寫,但是不推薦這樣做,因為這樣將增加閱讀代碼的難度。l +、-前面介紹過加減運算子,其實+、-還有另外一個意義,也就是代表正負,通常情況下正號可以省略,而負號可以和數值、變數以及運算式進行結合,範例程式碼如下:         int a = 0;         int b = 1;         int c = -5;         c = -a;         c = -(a + b);l ? :這個運算子稱為條件運算子,其作用是根據判斷的結果獲得對應的值,文法格式如下:         條件式 ? 值1 : 值2文法要求條件式部分必須是boolean類型,可以是boolean值,也可以是boolean變數,或者是關係運算子或邏輯運算子形成的式子,值1和值2必須能夠轉換成相同的類型。功能說明:如果條件式的結果是true,則整個式子的值取值1的值,否則取值2的值。範例程式碼如下:         int x = 10;         int y = 20;         int max = x > y ? x : y; //因為x大於y,則取變數x的值,然後賦值給max         int a = -10;         int abs = a > 0 ? a : -a; //實現求絕對值得功能l ()括弧,也是運算子的一種,作用是可以讓括弧內部的計算首先進行,這個和數學上一致,只是程式碼中可以使用這個組合任意的合法運算式。範例程式碼為:         int a = 1 + 2 * 3;         int a = (1 + 2) * 3; //和以上代碼的運行結果不一致其實每個運算子都有自己的優先順序,使用括弧可以提升對應式子的優先順序。關於運算子優先順序的概念,後續將進行介紹。
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.