1. 程式人生 > >00010_選擇結構if

00010_選擇結構if

n) 結果 表達 main if...else class fde pos 學生

1、選擇結構if

  if條件語句分為三種語法格式,每一種格式都有它自身的特點

2、if語句

  (1)if語句是指如果滿足某種條件,就進行某種處理

  (2)if語句的語法格式

1 if (條件語句){ 
2     執行語句;
3     ……
4 }

  (3)判斷條件是一個布爾值,當判斷條件為true時,{}中的執行語句才會執行

 1 public class IfDemo01 {
 2     public static void main(String[] args) {
 3         int x = 5;
 4         if (x < 10) {
 5             x++;
6 } 7 System.out.println("x=" + x); //輸出x=6 8 9 } 10 }

2、if...else語句

  (1)if…else語句是指如果滿足某種條件,就進行某種處理,否則就進行另一種處理

  (2)if…else語句的語法格式

1 if (判斷條件){
2     執行語句1
3     ……
4 }else{
5     執行語句2
6     ……
7 }

  (3)判斷條件是一個布爾值。當判斷條件為true時,if後面{}中的執行語句1會執行。當判斷條件為false時,else後面{}中的執行語句2會執行

 1 public class IfDemo02 {
 2     public static void main(String[] args) {
 3         int num = 19;
 4         if (num % 2 == 0) {
 5             // 判斷條件成立,num被2整除
 6             System.out.println("num是一個偶數");
 7         } else {
 8             System.out.println("num是一個奇數");
 9         }
10     }
11 }

3、if ... else if ... else語句

  (1)if ... else if ... else語句用於對多個條件進行判斷,進行多種不同的處理

  (2)if ... else if ... else語句的語法格式

1 if (判斷條件1) {
2     執行語句1
3 } else if (判斷條件2) {
4     執行語句2
5 }
6 ...
7 else if (判斷條件n) {

  (3)判斷條件是一個布爾值。當判斷條件1為true時,if後面{}中的執行語句1會執行。當判斷條件1為false時,會繼續執行判斷條件2,如果為true則執行語句2,以此類推,如果所有的判斷條件都為false,則意味著所有條件均未滿足,else後面{}中的執行語句n+1會執行

 1 public class IfDemo03 {
 2     public static void main(String[] args) {
 3         int grade = 75; // 定義學生成績
 4         if (grade > 80) {
 5             // 滿足條件 grade > 80
 6             System.out.println("該成績的等級為優");
 7         } else if (grade > 70) {
 8             // 不滿足條件 grade > 80 ,但滿足條件 grade > 70
 9             System.out.println("該成績的等級為良");
10         } else if (grade > 60) {
11             // 不滿足條件 grade > 70 ,但滿足條件 grade > 60
12             System.out.println("該成績的等級為中");
13         } else {
14             // 不滿足條件 grade > 60
15             System.out.println("該成績的等級為差");
16         }
17     }
18 }

4、選擇結構if語句與三元運算的轉換

  (1)三元運算符語法格式

    判斷條件 ? 表達式1 : 表達式2

  (2)三元運算符會得到一個結果,通常用於對某個變量進行賦值,當判斷條件成立時,運算結果為表達式1的值,否則結果為表達式2的值

  (3)求兩個數x、y中的較大者,如果用if…else語句來實現

1 int x = 0;
2 int y = 1;
3 int max;
4 if (x > y) {
5     max = x;
6 } else {
7     max = y;
8 }

  (4)以上3-8行的代碼可以使用下面的三元運算來替換

1 int max = x > y ? x : y;

    

  

00010_選擇結構if