if里面的條件語句判斷出結果后,后面的條件語句默認之前的判斷不需要再判斷之前的條件了??
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("童年");
? ?}
對比一下,這兩個。兩個都能運行,我的問題就是后面的條件語句默認之前的判斷不需要再判斷之前的條件了??
2016-11-30
第一個結果是 少年
第二個結果是 中年
當結果符合選擇時執行,不在判斷以后的語句
2016-11-30
判斷語句的規則是:如果條件成立,下面的else if 或者else判斷都不再執行。
如果判斷條件不成立,會逐條執行后面的判斷。
所以這2個都可行。
2016-11-30
這個判斷的條件屬于循環嵌套,在應用過程中它們兩者之間的關系是并且、或者的關系。第二段代碼是簡寫的方式。
2016-11-30
條件滿足后執行-跳出,然后不再逐條執行其后的判斷。