为什么会输出两个结果呢?

来源:4-3 Java条件语句之多重 if

时代风云

2016-10-13 14:10

                int age = 65;
		if (age > 60){
			System.out.println("老年");
		}if (age > 40){
			System.out.println("中年");
		}else if(age > 30){
			System.out.println("青年");
		}else if (age >= 18){
			System.out.println("少年");
		}else if (age < 18){
			System.out.println("童年");

输出的结果为:

老年

中年

为什么会输出两个结果呢?不是执行完第一个条件就不会在执行以下的条件了吗?

写回答 关注

3回答

  • 晴颜
    2016-10-13 14:32:19
    已采纳

    第二个if前面少了else,不然两个if是并排判断的,65满足前两行判断条件,所以会输出两个结果

    晴颜 回复时代风云

    不客气!

    2016-10-17 21:50:54

    共 2 条回复 >

  • 慕粉零零柒
    2016-10-13 14:17:17

    int age = 65;
               if (age > 60){
                   System.out.println("老年");
               }else if (age > 40){
                   System.out.println("中年");
               }else if(age > 30){
                   System.out.println("青年");
               }else if (age >= 18){
                   System.out.println("少年");
               }else {
                   System.out.println("童年");
       }

    这样写就对了,你的if 语法错了;

  • 馨儿不黑
    2016-10-13 14:15:27

    这个是嵌套if啊,第一个条件符合了,然后再判断第二个,第二个符合也打印,下面的为else,所以下面不执行

Java入门第一季(IDEA工具)升级版

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

1165172 学习 · 17581 问题

查看课程

相似问题