慕九州4223353
2017-09-03 22:42
public class HelloWorld {
public static void main(String[] args) {
int age=25;
if (age > 60){
System.out.println("老年");
}else if(40<age<60){
System.out.println("中年");
}else if(age>18 && age<40){
System.out.println("少年");
}else if(age<18){
System.out.println("童年");
}
计算机识别不了连续的大小比较的,再说你的一个if写了大于60,紧接着的else if里面直接写大于40就行!
你的程序还有一个问题,就是if 与else的对应关系,最后一个应该是else.
没必要这样转牛角尖。你这样就像是大街上,人家穿鞋走路很正常,而你非要赤脚走路而且感觉没毛病的那种。
那个位置的if如果大于60,程序就还是执行上段,if>40 相当于就表达了在40到60之间,而且if语句好像没有这种在范围的写法。
因为if语句是boolean,而age的定义是int,改成40 < age && age< 60就可以了。
Java入门第一季(IDEA工具)升级版
1165172 学习 · 17581 问题
相似问题