1. 程式人生 > 其它 >p36 if選擇結構

p36 if選擇結構

p36

if選擇結構

  • if單選擇結構
  • if雙選擇結構
  • if多選擇結構
  • 巢狀的if結構
  • switch多選擇結構

1. if單選擇結構

  • 我們很多時候需要去判斷一個東西是否可行,然後我們採取執行,這樣一個過程在程式中用if語句來表示
  • 語法

if(布林表示式){

//如果布林表示式為true將執行的語句

}

注:equals:判斷字串是否相等

程式碼

package com.kuang.struct;

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();

        //equals:判斷字串是否相等
        if(s.equals("Hello")){
            System.out.println(s);
        }
        System.out.println("END");

        scanner.close();

    }
}

2. if雙選擇結構

  • 那現在有一個需求,公司要收購一個軟體,成功了,給人支付100萬元,失敗了,自己找人開發。這樣的需求用一個if就搞不定了,我們需要有兩個判斷,需要一個雙選擇結構,所以就有了if-else結構。
  • 語法

if(布林表示式){

//如果布林表示式的值為true

}esle{

//如果布林表示式的值為false

}

程式碼

package com.kuang.struct;

import java.util.Scanner;

public class IfDemo02 {
    public static void main(String[] args) {

        //考試分數大於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();
    }
}

3. if多選擇結構

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

if(布林表示式 1){

//如果布林表示式 1的值為true執行程式碼

}else if(布林表示式 2){

//如果布林表示式 2的值為true執行程式碼

}else if(布林表示式 3){

//如果布林表示式 3的值為true執行程式碼

}else {

//如果以上布林表示式都不為true執行程式碼

}

程式碼

package com.kuang.struct;

import java.util.Scanner;

public class IfDemo03 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        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 語句至多有一個else語句,else語句在所有的else if語句之後。
if語句可以有若干個else if語句,他們必須在else語句之前。
一旦其中一個else if語句檢測為true,其他的else if以及esle 語句都將跳過執行。

4. 巢狀的if結構

  • 使用巢狀的if...else語句是合法的。也就是說你可以在另一個if或者else if語句中使用if或者else if語句。你可以像if語句一樣巢狀else if...else。
  • 語法:

if(布林表示式 1){

////如果布林表示式 1的值為true執行程式碼

if(){////如果布林表示式 2的值為true執行程式碼

}

}

  • 思考?我們需要尋找一個數,在1-100之間