Java条件语句中else悬空问题

// A "dangling else"
if (door.isOpen())
    if (resident.isVisible())
        resident.greet("Hello!");
else door.bell.ring();  

外部if语句和内部语句都可能拥有else语句,人们可能以为else属于外部if,其实不然,规则是:

else属于离else最近的if语句。

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/experience/javaexp/8585.html

发表评论

登录后才能评论