中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java中什么是三目運算符

發布時間:2021-07-02 15:15:30 來源:億速云 閱讀:138 作者:Leah 欄目:編程語言

Java中什么是三目運算符,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

  Java提供了一個特別的三元運算符(也叫三目運算符)經常用于取代某個類型的if-then-else語句。條件運算符的符號表示為“?:”,使用該運算符時需要有三個操作數,因此稱其為三目運算符。使用條件運算符的一般語法結構為:

  result=?:;

  其中,expression是一個布爾表達式。當expression為真時,執行statement1,否則就執行statement3。此三元運算符要求返回一個結果,因此要實現簡單的二分支程序,即可使用該條件運算符。

下面是一個使用條件運算符的示例。

  intx,y,z;

  x=6,y=2;

  z=x>y?x-y:x+y;

  在這里要計算z的值,首先要判斷x>y表達的值,如果為true,z的值為x-y;否則z的值為x+y。很明顯x>y表達式結果為true,所以z的值為4。

  技巧:可以將條件運算符理解為if-else語句的簡化形式,在使用較為簡單的表達式時,使用該運算符能夠簡化程序代碼,使程序更加易讀。

在使用條件運算符時,還應該注意優先級問題

  例如下面的表達式:

  x>y?x-=y:x+=y;

  在編譯時會出現語法錯誤,因為條件運算符優先于賦值運算符,上面的語句實際等價于:

  (x>y?x-=y:x)+=y;

  而運算符“+=”是賦值運算符,該運算符要求左操作數應該是一個變量,因此出現錯誤。為了避免這類錯誤,可以使用括號“0”來加以區分。例如,下面是正確的表達式。

  (x>y)?(x-=y):(x+=y);

  例1

  在程序中聲明3個變量x、y、z,并由用戶從鍵盤輸入x的值,然后使用條件運算符向變量y和變量z賦值。實現代碼如下:

  publicclassTest9{

  publicstaticvoidmain(String[]args){

  intx,y,z;//聲明三個變量

  System.out.print("請輸入一個數:");

  Scannerinput=newScanner(System.in);

  x=input.nextInt();//由用戶輸入x的值

  //判斷x的值是否大于5,如果是y=x,否則y=-x

  y=x>5?x:-x;

  //判斷y的值是否大于x,如果是z=y,否則z=5

  z=y>x?y:5;

  System.out.printf("x=%d\n",x);

  System.out.printf("y=%d\n",y);

  System.out.printf("z=%d\n",z);

  }

  }

  在該程序中,首先輸入x的值為58,然后判斷x的值是否大于5,顯然條件是成立,則y的值為x,即y=58。接著判斷y的值是否大于x,因為y的值和x的值都為58,所以該條件是不成立的,則z=5。再次輸入x的值為4,然后判斷x的值是否大于5,不成立,則y=-4;接著判斷y的值是否大于x,不成立,則z=5。

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

达日县| 浦江县| 甘南县| 永善县| 都匀市| 双流县| 招远市| 搜索| 遂平县| 江西省| 武定县| 湘乡市| 郎溪县| 台北市| 武陟县| 大英县| 万荣县| 双辽市| 奉化市| 汶上县| 五指山市| 伊春市| 连江县| 闽侯县| 定南县| 灵璧县| 安阳县| 漳州市| 无锡市| 讷河市| 绥江县| 平武县| 岱山县| 临泽县| 赣州市| 和政县| 来安县| 南部县| 西城区| 安吉县| 濮阳县|