有大括號的時候 大括號里面所有的 都歸if管。只有條件為真的時候 才會執行。
沒有大括號的時候 只有下面的一句歸if管,
也就是說 當只有一句的時候 大括號可以省略 其它的 沒區別。
加大括號是表示滿足小括號中條件時執行的。
而不加大括號,則表示默認的滿足條件時,執行后面的第一句話。以分號結束。
例1:
public static void main(String[] args) {- //關於if語句帶括號和不帶括號的區別
- int i = 0
- //帶括號的if語句
- if (i == 0) {
- System.out.println("if語句內的第一條語句");
- int x ;
- x = 10;
- System.out.println(x);
- }
- //帶括號的語句在if語句為true的時候,執行條件語句中的語句,否則,不執行。
-
- //不帶括號的語句
- if(i == 0)
- System.out.println("if語句內的第一條語句");
- int x;
- x = 10;
- System.out.println(x);
- //以上語句中如果條件表達式是true,則只執行輸出語句,而以下的語句在判斷語句結束后繼續執行,和if語句wuguan
-
- if(i == 0)
- int y = 1; //編譯錯誤,因為該語句是兩條 語句,即int y; y = 1;
- //總結:使用無括號的條件語句只能執行第一條語句,第一條語句必須是單條語句。
-
- }
例2:
簡單點:有括號的話,if語句控制{}里面的所有語句,沒括號的話,if語句只控制最近的一行。
如:if(a==ture)
{
System.out.println("Hello,黑馬!我來了!");
System.out.println("Welcome");
}
當條件成立時,程序會讀取括號里面的兩條語句。當條件不成立時,兩條語句都不會讀取,直接跳出if()語句塊內容。
if(a==ture)
System.out.println("Hello,黑馬!我來了!“);
System.out.println("Welcome");
如果沒有大括號,if語句只控制System.out.println("Hello,黑馬!我來了!"),當if條件成立的時候,程序會輸出以上兩句語句,當條件不成立的時候,程序只會輸出System.out.println("Welcome")。
總結一下就是:
帶大括號的語句根據if語句的規則在if語句為true的時候,執行大括號中的執行語句。若if語句為falut,則不執行。
不帶括號的語句中如果if后的條件表達式是true,則只執行該if語句的下一條語句,且這條語句必須是單條語句。剩下的語句執行與否,與該if語句無關。