自己對Java中if變數賦值的理解

stay down發表於2020-09-26

if條件中的局域變數的作用域

  1. 在if條件裡面定義的變數沒法在,if外面共享比如下面

在這裡插入圖片描述
2. if條件,程式不一定會,執行,但是else條件肯定會執行。所以不要在if條件裡面定義變數

在這裡插入圖片描述
但是如果加上else結果就不一樣了
在這裡插入圖片描述

if-else if -else中的條件有作用區間的

先看段簡單的程式碼,結果是啥很明顯了

 		int score = 89;
	    if(score<0 || score>100){
	      	System.out.println("你的成績是錯誤的");
	    }else if(score>=90){
	      	System.out.println("你的成績屬於優秀");
	    }else if(score>=80){
	      	System.out.println("你的成績屬於好");
	    }else if(score>=70){
	      	System.out.println("你的成績屬於良");
	    }else if(score>=60){
	      	System.out.println("你的成績屬於及格");
	    }else {
	      	System.out.println("你的成績屬於不及格");
	    }	

再來看段對於新手來說稍微難點的

public static void main(String[] args) {	
    int score = 89;
    if(score<0 || score>100){
      	System.out.println("你的成績是錯誤的");
    }else if(score>=90 && score<=100){
      	System.out.println("你的成績屬於優秀");
    }else if(score>=80 && score<90){
      	System.out.println("你的成績屬於好");
    }else if(score>=70 && score<80){
      	System.out.println("你的成績屬於良");
    }else if(score>=60 && score<70){
      	System.out.println("你的成績屬於及格");
    }else {
      	System.out.println("你的成績屬於不及格");
    }	
}

答案就是:你的成績屬於好

想要簡單的理解和以後快速的寫出這種厲(nao)害(can)的判斷條件,我們就需要知道,條件的作用區間(運用的是高中簡單的數學知識)
在這裡插入圖片描述

畫得有點不好,高中知識還在得看一眼就明白了。

 1. 作用區間就是條件自己的交集。
 2. 交集沒有重複的話,if條件的隨便放在那裡,比如
 if(score>=60 && score<70){...}else if(score<0 || score>100){...}...
 3.交集範圍小的條件,放在條件最前面,比如下面這個
	int score = 89;
    if(score>=90){
      	System.out.println("你的成績是優秀的");
    }else if(score>=80){
      	System.out.println("你的成績屬於好的");
    }

do-while中的定義的變數作用域

變數的作用域,自己百度(╬▔皿▔),
**

 do-while(包while)裡面定義的變數只能在自己的大括號裡面使用

**

  1. 在do-while裡面定義的變數,無法在do-while外面使用
  2. 在do-while裡面定義的變數,無法作為do-while條件使用

相關文章