1. 程式人生 > 其它 >Java中的多分支 if較單分支if的優點

Java中的多分支 if較單分支if的優點

單分支 if 語句表述形式為:if(條件1){輸出1}     if(條件2){輸出2}……如此往復;

每次執行程式時,從上往下依次判斷所有的if語句是否成立,會造成資源的浪費,如程式碼所示:

import java.util.Scanner;

public class yourBIM {

    public static void main(String[] args) {    
       double BIM = in.nextDouble();
       System.out.print("您的體重屬於:");
       if (BIM<18.5) {
           System.out.println("體重過輕");


       }
       if (BIM>=18.5&&BIM<24.9) {
           System.out.println("正常範圍");
       }
       if (BIM>=24.9&&BIM<29.9) {
           System.out.println("體重過重");
       }
       if (BIM>=29.9) {
           System.out.println("肥胖");
       }
    }

}

假設當我們輸入17.6的時候,其實第一個條件判斷過後就可以得出結論了。但由於時單分支if語句,程式還是需要判斷4次條件。

 

多分支 if 語句表述形式為:if (條件1){輸出1}  else if(條件2){輸出2}…中間可有多個else if…   else {輸出n}; 

每次程式執行的時候,會從上到下依次判斷條件是否成立,當其中一條語句成立時,停止判斷,直接跳出。如程式碼所示:

import java.util.Scanner;

public class yourBIM {

    public static void main(String[] args) {    
       double BIM = in.nextDouble();       
   System.out.print("您的體重屬於:");
           if (BIM<18.5) {


               System.out.println("體重過輕");
           }
           else if (BIM>=18.5&&BIM<24.9) {
               System.out.println("正常範圍");
           }
           else if (BIM>=24.9&&BIM<29.9) {
               System.out.println("體重過重");
           }
           else  {
               System.out.println("肥胖");
           }

}

當我們輸入18.6的時候,會在第二條語句判斷成功並輸出“正常範圍”,此時不會繼續判斷下面的if語句,而是直接跳出,結束判斷。

 

顯而易見,多分支if語句,可以極大程度的減少程式對語句的判斷,在龐大的判斷語句中非常節時!