在正常的if / else语句中,例如,如果一个bool为true,则调用该语句 e.g:
*=
当然,在此示例中将调用bool1 = true;
bool2 = false;
bool3 = false;
if(bool1){
DoSomething();
}else if(bool2){
DoSomethingElse();
}else{
DoSomethingHelpful();
}
。
但是,如果2或3个bool等于true,例如:
DoSomething()
将会发出什么声明?它是bool1 = true;
bool2 = true;
bool3 = false;
if(bool1){
DoSomething();
}else if(bool2){
DoSomethingElse();
}else{
DoSomethingHelpful();
}
因为它是编译器读取的第一个语句吗?或者只是返回错误
答案 0 :(得分:0)
if
,elseif
和else
也可以被视为:
if (bool1) {
DoSomething();
} else {
if (bool2) {
DoSomethingElse();
} else {
DoSomethingHelpful();
}
}
答案 1 :(得分:0)
由于第一个语句满足条件,因此将调用DoSomething(),因此编译器不会生成错误,并且将跳过其他条件。