天天看點

兩個if 一個else,怎麼比對

文章目錄

    • if
    • else if
    • else
    • 注意:
      • 測試1:
        • 解讀:
      • 測試2:
        • 解讀:

if

  • 如果if中的條件滿足,就可以執行
  • if無論是否滿足條件都會向下執行,直到程式結束
  • 雙if是每一個if都會進行判斷,互相之間不會影響;

else if

  • 很特殊,既要滿足是else,又要滿足if條件
  • 即不是上一個條件的前提下,如果滿足這個條件,就執行裡面的操作。
  • else if 滿足一個條件就會停止執行。

else

  • 總是與其前面最近的尚未配對的if結合

注意:

有多個if時,由于if都會執行一遍,則可能會進入到多個if中,出現未知錯誤,而else if就隻能進入一次

測試1:

Scanner scanner=new Scanner(System.in);
        int input=scanner.nextInt();
        if(input==1){
            System.out.println("第一個if");
        }
        if(input!=1){
            System.out.println("第二個if");
        }
        else{
            System.out.println("else");
        }
           

輸入1時,輸出結果為:

第一個if
else
           

解讀:

  • 1滿足第一個if的條件,是以可以輸出
  • 1不滿足第二個if的條件,而else和最近的if(即第二個if)配對,是以又進入到了else分支

測試2:

Scanner scanner=new Scanner(System.in);
        int input=scanner.nextInt();
        if(input!=1){
            System.out.println("第一個if");
        }
        else if(input==1){
            System.out.println("第二個if");
        }
        else{
            System.out.println("else");
        }


           

輸入2時:

解讀:

  • 這三個分支隻能進入一個
  • 執行完一個就結束了