Java順序結構與選擇結構【花時間看看,鞏固基礎,終生受益,升職加薪】

木子平落發表於2020-11-17

順序結構

  • Java的基本結構就是順序結構,除非特別指明,否則就按照順序一句一句執行。

  • 順序結構是最簡單的演算法結構。

    [外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片儲存下來直接上傳(img-EzwGIJOE-1605573066964)(D:\學習\tupian\順序結構\sx.png)]

  • 語句與語句之間,框與框之間是按從上到下的順序進行的,它是由若干個依次執行的處理步驟組成的,它是任何一個演算法都離不開的一種基本演算法結構。

選擇結構

  • if單選擇結構

    • 我們很多時候需要去判斷一個東西是否可行,然後我們才去執行,這樣一個過程在程式中用if語句來表示
    • 語法:
    if(布林表示式){
    	//如果布林表示式為true將執行的語句
    }
    
    True
    false
    布林表示式
    執行的語句
    退出
    • 舉例:
    package judge;
    
    import java.util.Scanner;
    
    public class IfDemo01 {
        public static void main(String[] args) {
    
            Scanner scanner = new Scanner(System.in);
    
            System.out.println("請輸入內容:");
            String s = scanner.nextLine();
    
            // 判斷s接收到的字串是否是Hello,equals:判斷字串是否相等
            if (s.equals("Hello")) {
                System.out.println(s);// 判斷成立輸出Hello
            }
    
            System.out.println("End");
            scanner.close();
    
        }
    }
    
    
  • if雙選擇結構

    • 現在有個需求,公司要收購一個軟體,成功了,給人支付100萬元,失敗了,自己找人開發。這樣的需求用一個if就搞不定了,我們需要有兩個判斷,需要一個雙選擇結構,所以就有了if-else結構。
    • 語法:
    if (布林表示式){
    	//如果布林表示式的值為true
    }else{
        //如果布林表示式的值為false
    }
    
    true
    flase
    布林表示式
    語句1
    退出
    語句2
    • 舉例:
//考試分數大於60就是及格,小於60分就不及格。
Scanner scanner = new Scanner(System.in);

System.out.println("請輸入成績");
int score = scanner.nextInt();

if (score>60) {
    System.out.println("及格");
}else {
    System.out.println("不及格");
}

scanner.close();
  • if多選擇結構

    • 我們發現剛才的程式碼不符合實際情況,真實的情況還可能存在ABCD,存在區間多級判斷。比如90-100就是A,80-90就是B…等等,在生活中我們很多時候的選擇也不僅僅只有兩個,所以我們需要一個多選擇結構來處理這類問題!

    • 語法:

      if(布林表示式 1){
          //如果布林表示式 1的值為true執行程式碼
      }else if(布林表示式 2){
          //如果布林表示式 2的值為true執行程式碼
      }else if(布林表示式 3){
          //如果布林表示式 3的值為true執行程式碼
      }else if(布林表示式 4){
          //如果布林表示式 4的值為true執行程式碼
      }else{
          //如果以上布林表示式都不為true執行程式碼
      }
      
      true
      true
      true
      flase
      布林表示式
      語句1
      退出
      語句2
      語句3
      語句4
      • 例項:
    package judge;
    
    import java.util.Scanner;
    
    public class IfDemo03 {
        public static void main(String[] args) {
            //考試分數大於60就是及格,小於60分就不及格。
            Scanner scanner = new Scanner(System.in);
    
    /*
    if 語句至多有 1 個 else 語句,else 語句在所有的 else if 語句之後,if 語句可以有若干個 else if 語句,它們必須在 else 語句之前。
    一旦其中一個 else if 語句檢測為 true ,其他的 else if 以及 else 語句都將跳過執行。
    */
    
            System.out.println("請輸入成績:");
            int score = scanner.nextInt();
    
            if (score==100){
                System.out.println("恭喜滿分");
            } else if (score<100 && score>=90){
                System.out.println("A級");
            } else if (score<90 && score>=80){
                System.out.println("B級");
            } else if (score<80 && score>=70){
                System.out.println("C級");
            } else if (score<70 && score>=60){
                System.out.println("D級");
            } else if (score<60 && score>=0){
                System.out.println("不及格");
            } else {
                System.out.println("成績不合法");
            }
    
            scanner.close();
        }
    }
    
  • 巢狀的if結構

    • 例項:
    package judge;
    
    import java.util.Scanner;
    
    public class IfDemo04 {
        public static void main(String[] args) {
    
            Scanner scanner = new Scanner(System.in);
    
            System.out.println("請輸入一個字串:");
            String s = scanner.nextLine();
    
            if (s.equals("Hello")){// 判斷使用者輸入的是不是Hello
                
                System.out.println("請再次輸入字串:");
                String s2 = scanner.nextLine();
                
                if (s2.equals("Hello World")){// 判斷使用者輸入的是否Hello World
                    
                    System.out.println("Hello programmer");// 是 輸出
                    
                }else{
                    
                    System.out.println("你輸入了:"+s);// 不是 輸出
                    
                }
                
            }else{// 如果不是Hello就輸出
                System.out.println("你輸入了:"+s);
            }
    
        }
    }
    
    

    [外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片儲存下來直接上傳(img-5hjUlvbC-1605573066969)(D:\學習\tupian\順序結構\If.png)]

  • switch多選擇結構

    • 多選擇結構還有一個實現方式就是 switch case 語句。

    • switch case 語句判斷一個變數與一系列值中某個值是否相等,每個值稱為一個分支。

    • switch 語句中的變數型別可以是:

      • byte、short、int 或者 char。
      • 從 Java SE 7 開始
      • switch 支援字串 String 型別了
      • 同時 case 標籤必須為字串常量或字面量。
    • 舉例:

    // switch 匹配一個具體的值
    char grade = 'C';// 這裡是C 所以輸出的是 及格
    
    switch (grade){
        case 'A':
            System.out.println("優秀");
            break; // 可選 如果沒有加 就會沒有break的語句,所以必須加  // 沒有break就叫 case 穿透現象
        case 'B':
         	System.out.println("良好");
            break;
        case 'C':
            System.out.println("及格");
            break;
        case 'D':
            System.out.println("再接再厲");
            break;
        case 'E':
            System.out.println("掛科");
            break;
        default:
            System.out.println("未知等級");
    }
    

相關文章