5.3 條件語句
條件語句,是程序中根據條件是否成立進行選擇執行的一類語句,這類語句在實際使用中,難點在於如何准確的抽象條件。例如實現程序登錄功能時,如果用戶名和密碼正確,則進入系統,否則彈出“密碼錯誤”這樣的提示框等。
本部分對於條件語句的介紹,重點在於語法講解和基本的使用,更詳細的使用參看後續的綜合示例部分。
在Java語言中,條件語句主要有兩類語法:if語句和switch語句。
5.3.1 if語句
if關鍵字中文意思是如果,其細致的語法歸納來說總共有三種:if語句、if-else語句和if-else if-else語句,下面分別進行介紹。
5.3.1.1 if語句
該類語句的語法格式為:
if(條件表達式)
功能代碼;
語法說明:if是該語句中的關鍵字,後續緊跟一對小括號,該對小括號任何時候不能省略,小括號的內部是具體的條件,語法上要求該表達式結果為boolean類型。後續為功能的代碼,也就是當條件成立時執行的代碼,在程序書寫時,一般為了直觀的表達包含關系,功能代碼一般需要縮進。
需要特別注意的是:
1、這裡的功能代碼只能是一行,關於多行結構的功能代碼,後續將說明。
2、if(條件表達式)後續一般不書寫分號
if語句的執行流程為:如果條件表達式成立,則執行功能代碼,如果條件表達式不成立,則不執行後續的功能代碼。
示例代碼:
int a = 10;
if(a >= 0)
System.out.println(“a是正數”);
if( a % 2 == 0)
System.out.println(“a是偶數”);
在該示例代碼中,第一個條件是判斷變量a的值是否大於等於零,如果該條件成立則執行輸出,第二個條件是判斷變量a是否為偶數,如果成立也輸出。
注意以下代碼的執行流程:
int m = 20;
if( m > 20)
m += 20;
System.out.println(m);
按照前面的語法格式說明,只有m+=20;這行代碼屬於功能代碼,而後續的輸出語句和前面的條件形成順序結構,所以該程序執行以後輸出的結果為20。
如果當條件成立時,需要執行的語句有多句,則可以使用語句塊來進行表述,語法格式如下:
if(條件表達式){
功能代碼塊;
}
使用這種語法格式,使用一個代碼塊來代替前面的功能代碼,這樣可以在代碼塊內部書寫任意多行的代碼,而且也使整個程序的邏輯比較清楚,所以在實際的代碼編寫中推薦使用該種邏輯。