執(zhí)行某段代碼。java中if是控制分支結(jié)構(gòu)的,意思是如果條件成立的話,執(zhí)行某段代碼。if語句一個if語句包含一個布爾表達式和一條或多條語句。
成都創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務,包含不限于網(wǎng)站設計制作、成都網(wǎng)站建設、朗縣網(wǎng)絡推廣、成都小程序開發(fā)、朗縣網(wǎng)絡營銷、朗縣企業(yè)策劃、朗縣品牌公關、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務,您的肯定,是我們最大的嘉獎;成都創(chuàng)新互聯(lián)公司為所有大學生創(chuàng)業(yè)者提供朗縣建站搭建服務,24小時服務熱線:18982081108,官方網(wǎng)址:www.cdcxhl.com
根據(jù)你下面的代碼我判斷你這A、B、C應該是String類型的
String類型要判斷是否相等是用equalsIgnoreCase("String")
所有這個if語句應該這么寫
String A="A";
String B="B";
String C="C";
if((A.equalsIgnoreCase("a") B.equalsIgnoreCase("B"))||(A.equalsIgnoreCase("A") C.equalsIgnoreCase("C"))){
b=true;
break;
}else{
}
import?java.util.Scanner;
public?class?test?{
public?static?void?main(String[]?args)?{
int?j?=?0;//?從0米開始跑
Scanner?in?=?new?Scanner(System.in);
while(true)?{
System.out.println("你跑了多少米?");
j?=?in.nextInt();
System.out.println("口渴嗎?請輸入(yes?or?no)");
String?thirst?=?in.next();
if?(j??400)?{
if?(!thirst.equals("yes"))?{
System.out.println("好吧,那你繼續(xù)跑吧!");
continue;?//?不喝水,繼續(xù)跑
}?else?{
System.out.println("過來喝水吧");
}
break;
}
else{
continue;
}
}
}
}
謝謝采納
條件語句,是程序中根據(jù)條件是否成立進行選擇執(zhí)行的一類語句,這類語句在實際使用中,難點在于如何準確的抽象條件。例如實現(xiàn)程序登錄功能時,如果用戶名和密碼正確,則進入系統(tǒng),否則彈出“密碼錯誤”這樣的提示框等。
本部分對于條件語句的介紹,重點在于語法講解和基本的使用,更詳細的使用參看后續(xù)的綜合示例部分。
在Java語言中,條件語句主要有兩類語法:if語句和switch語句。
1 、if語句
if關鍵字中文意思是如果,其細致的語法歸納來說總共有三種:if語句、if-else語句和if-else if-else語句,下面分別進行介紹。
1.1 if語句
該類語句的語法格式為:if(條件表達式)
功能代碼;語法說明:if是該語句中的關鍵字,后續(xù)緊跟一對小括號,該對小括號任何時候不能省略,小括號的內(nèi)部是具體的條件,語法上要求該表達式結(jié)果為boolean類型。后續(xù)為功能的代碼,也就是當條件成立時執(zhí)行的代碼,在程序書寫時,一般為了直觀的表達包含關系,功能代碼一般需要縮進。
需要特別注意的是:
1、 這里的功能代碼只能是一行,關于多行結(jié)構(gòu)的功能代碼,后續(xù)將說明。
2、 if(條件表達式)后續(xù)一般不書寫分號if語句的執(zhí)行流程為:如果條件表達式成立,則執(zhí)行功能代碼,如果條件表達式不成立,則不執(zhí)行后續(xù)的功能代碼。
示例代碼:
int a = 10;
if(a = 0)
System.out.println(“a是正數(shù)”);
if( a % 2 == 0)
System.out.println(“a是偶數(shù)”);
在該示例代碼中,第一個條件是判斷變量a的值是否大于等于零,如果該條件成立則執(zhí)行輸出,第二個條件是判斷變量a是否為偶數(shù),如果成立也輸出。
注意以下代碼的執(zhí)行流程:
int m = 20;
if( m 20)
m += 20;
System.out.println(m);
按照前面的語法格式說明,只有m+=20;這行代碼屬于功能代碼,而后續(xù)的輸出語句和前面的條件形成順序結(jié)構(gòu),所以該程序執(zhí)行以后輸出的結(jié)果為20.如果當條件成立時,需要執(zhí)行的語句有多句,則可以使用語句塊來進行表述,語法格式如下:
if(條件表達式){
功能代碼塊;
}
使用這種語法格式,使用一個代碼塊來代替前面的功能代碼,這樣可以在代碼塊內(nèi)部書寫任意多行的代碼,而且也使整個程序的邏輯比較清楚,所以在實際的代碼編寫中推薦使用該種邏輯。
1.2 if-else語句
if-else語句實現(xiàn)了封閉的條件,在程序中使用的更加常見。其中else關鍵字的作用是“否則”,即條件不成立的情況。
if-else語句的語法格式如下:
if(條件表達式)
功能代碼1;
else
功能代碼2;
語法說明:其中前面的部分和if語句一樣,else部分后面是功能的代碼,按照該語法格式,功能代碼只能有一句。
執(zhí)行順序:如果條件成立,則執(zhí)行if語句中的功能代碼1,否則執(zhí)行else中的功能代碼2.示例代碼為:
int n = 12;
if(n % 2 != 0)
System.out.println(“n是奇數(shù)”);
else System.out.println(“n不是奇數(shù)”);
則因為n%2的值是0,條件不成立,則執(zhí)行else語句的代碼,程序輸出“n不是奇數(shù)”。
在實際使用時,為了結(jié)構(gòu)清楚,以及可以在功能代碼部分書寫多行代碼,一般把功能代碼部分使用代碼塊,則語法格式為:
if(條件表達式){
功能代碼塊
}else{
功能代碼塊
}
當程序中有多個if時,else語句和最近的if匹配。示例代碼:
if(條件1)
功能代碼1;
if(條件2)
功能代碼2;
else功能代碼3;
則這里的else語句和條件2對應的if語句匹配,前面的條件1是一個獨立的語句。在實際代碼中,可以使用大括號使整個程序的結(jié)構(gòu)更加清楚。
對于if-else語句來說,因為if的條件和else的條件是互斥的,所以在實際執(zhí)行中,只有一個語句中的功能代碼會得到執(zhí)行。
在實際開發(fā)中,有些公司在書寫條件時,即使else語句中不書寫代碼,也要求必須書寫else,這樣可以讓條件封閉。這個不是語法上必須的。
1.3 if-else
if-else語句在現(xiàn)實中,有些時候的條件不是一個,而是一組相關的條件,例如將阿拉伯數(shù)字轉(zhuǎn)換為中文大寫,根據(jù)分數(shù)轉(zhuǎn)換為對應的等級等,都是多條件的結(jié)構(gòu),在程序中為了避免寫多個if語句的結(jié)構(gòu),提供了一類專門的多分支語句,這就是if-else if-else語句。
if-else if-else語句的語法格式為:
if(條件1)
功能代碼1;
else if(條件2)
功能代碼2;
else if(條件3)
功能代碼3;
……
else功能代碼;
語法說明:
1、 else if是else和if兩個關鍵字,中間使用空格進行間隔。
2、 條件1到條件n都是boolean類型
3、 else if語句可以有任意多句
4、 最后的else語句為可選
5、 如果功能代碼部分不是語句塊,也就是不用大括號,就只能寫一句。
執(zhí)行流程:當條件1成立時,則執(zhí)行功能代碼1;當條件1不成立且條件2成立時,則執(zhí)行功能代碼2;如果條件1、條件2都不成立且條件3成立,則執(zhí)行功能代碼3,依次類推,如果所有條件都不成立,則執(zhí)行else語句的功能代碼。其執(zhí)行流程的流程圖如上所示。
下面是一個實現(xiàn)根據(jù)月份的值,輸出該月份包含的日期數(shù),2月份全部輸出28,不考慮閏年的示例代碼:
int month = 3;
int days = 0; //日期數(shù)
if(month == 1){
days = 31;
}else if(month == 2){
days = 28;
} else if(month == 3){
days = 31;
} else if(month == 4){
days = 30;
} else if(month == 5){
days = 31;
} else if(month == 6){
days = 30;
} else if(month == 7){
days = 31;
} else if(month == 8){
days = 31;
} else if(month == 9){
days = 30;
} else if(month == 10){
days = 31;
} else if(month == 11){
days = 30;
} else if(month == 12){
days = 31;
}
System.out.println(days);
再來看一個示例代碼,該代碼的功能是實現(xiàn)將百分制的成績轉(zhuǎn)換為A、B、C、D和E,代碼如下:
int score = 87;
if(score = 90){
System.out.println(‘A’);
} else if(score = 80){
System.out.println(‘B’);
} else if(score = 70){
System.out.println(‘C’);
} else if(score = 60){
System.out.println(‘D’);
} else{
System.out.println(‘E’);
}
從該代碼中可知,每個else if語句在書寫時是有順序的,在實際書寫時,必須按照邏輯上的順序進行書寫,否則將出現(xiàn)邏輯錯誤。
if-else if-else語句是Java語言中提供的一個多分支條件語句,但是在判斷某些問題時,會書寫的比較麻煩,所以在語法中提供了另外一個語句——switch語句來更好的實現(xiàn)多分支語句的判別。
-----參考資料: