为了账号安全,请及时绑定邮箱和手机立即绑定

Java条件语句之多重 if

int age=17;

                if(age>60){System.out.printf("老年");}

                else if (age>=40){System.out.printf("中年");}

                else if (age>18&&age<40){System.out.printf("少年");}

                else {System.out.printf("童年");}

本来我想的这样age>18&&age<40,但是后来想了下,程序肯定是一层一层判断的,从上到下,所以age>18&&age<40写成age>18就可以了,是这样理解的么

正在回答

3 回答

可以的,if是满足条件做循环语句,做完就跳过else。你这里,if(age>=40){},这是说age>=40才会输出中年,如果age<40,那么就进入else if(age>18)这条语句,也就是说这里已经判断出age不满足上面的判断内容。

0 回复 有任何疑惑可以回复我~

if...else语句中,当不满足if条件的时候,进入case条件。

拿你的例子来说,当age不大于60的时候,才进入else,说明进入else循环的必要条件是小于60,所以在第一个else if中,只写年龄大于等于40岁,即可输出“中年”。以此类推,进入第二个else if的必要条件是年龄小于40岁,所以只要写age>=18,即可输出“少年。

0 回复 有任何疑惑可以回复我~

可以这么理解,因为当你执行else if (age>18){System.out.printf("少年");}的时候,else就说明上一个条件不成立,也就是age>= 40不成立,所以age>18&&age<40写成age>18 就可以了

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第一季(IDEA工具)升级版
  • 参与学习       1165150    人
  • 解答问题       17581    个

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

进入课程

Java条件语句之多重 if

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信