Java程式設計那些事兒27 其它運算子

2021-04-23 17:53:58 字數 2056 閱讀 6435

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; //和以上**的執行結果不一致

其實每個運算子都有自己的優先順序,使用括號可以提公升對應式子的優先順序。關於運算子優先順序的概念,後續將進行介紹。

Java程式設計那些事兒 如何學好程式設計

俗話說 興趣是最好的老師 但是只靠興趣是遠遠不夠的,還需要付出艱辛的努力。程式設計是一種技能,需要在較短的時間內學會,就不能像學習漢語一樣,通過十幾年甚至更長的時間來學好,也不能像英語那樣進行業餘學習,以至很多大學畢業的人英語水平也不敢恭維,也達不到實用的程度。那麼如何學好程式設計呢?或者更現實一點...

程式語言那些事兒

開發工具 入門 c 初級開發師 基本資料型別 引用資料型別 常量 變數 表示式 運算子 順序 分支 迴圈 i oc 中級開發師 命名空間 程式設計思想 量化你的思維 流程圖 偽 功能劃分 模組劃分 db設計 sys設計 函式思想 重用 i o 重構 物件導向的思想 物件陣列 物件指標 友元函式和友元...

Java程式設計那些事兒36 do while語句語法

5.4.2 do while語句 do while語句由關鍵字do和while組成,是迴圈語句中最典型的 先迴圈再判斷 的流程控制結構,這個和其它2個迴圈語句都不相同。do while語句的語法格式為 dowhile 迴圈條件 語法說明 在do while語句中,迴圈體部分是重複執行的 部分,迴圈條...