if里面的條件語句判斷出結(jié)果后,后面的條件語句默認(rèn)之前的判斷不需要再判斷之前的條件了??
int age=25;
? ?if (age>60){
? ? ? ? System.out.println("老年");
? ? ? ? }else if(age<60&&age>40){
? ? ? ? ? ? System.out.println("中年");
? ? ? ? }else if(age>=18&&age<=40){
? ? ? ? ? ? ? ? System.out.println("少年");
? ? ? ? }else{
? ? ? ? ? ? ? ? System.out.print("童年");
? ? ? ? }
int age=45;
if(age>60){
? ? System.out.println("老年"); ?
}
? ?else if(age>40){
? ? ? ?System.out.println("中年");
? ?}
? ?else if(age>18){
? ? ? ?System.out.println("少年");
? ?}
? ?else if(age<18){
? ? ? ?System.out.println("童年");
? ?}
對比一下,這兩個。兩個都能運(yùn)行,我的問題就是后面的條件語句默認(rèn)之前的判斷不需要再判斷之前的條件了??
2016-11-30
第一個結(jié)果是 少年
第二個結(jié)果是 中年
當(dāng)結(jié)果符合選擇時執(zhí)行,不在判斷以后的語句
2016-11-30
判斷語句的規(guī)則是:如果條件成立,下面的else if 或者else判斷都不再執(zhí)行。
如果判斷條件不成立,會逐條執(zhí)行后面的判斷。
所以這2個都可行。
2016-11-30
這個判斷的條件屬于循環(huán)嵌套,在應(yīng)用過程中它們兩者之間的關(guān)系是并且、或者的關(guān)系。第二段代碼是簡寫的方式。
2016-11-30
條件滿足后執(zhí)行-跳出,然后不再逐條執(zhí)行其后的判斷。