A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 谢宝盛 中级黑马   /  2012-11-23 12:05  /  1290 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

class ifdemo1
{
     public static void main(String[] args)

        {
               
          int n=5;
         if(n>1)
                System.out.println("a");
        else if(n>2)
                System.out.println("b");
        else if(n>6)
                System.out.println("c");
        else
                System.out.println("NO");
        }

}

现在是满足了n>1 n>2  不满足n>6
结果是打印n>1 ==="a"
是不是满足第一个个条件,后面的条件是不是就不需要执行

评分

参与人数 1技术分 +1 收起 理由
刘芮铭 + 1 赞一个!

查看全部评分

5 个回复

正序浏览
你那个程序运行结果为a,if语句中如果满足第一个条件就直接打印,后面的代码是执行不到的。
回复 使用道具 举报
舒远 黑马帝 2012-11-23 13:13:48
板凳
class ifdemo1
{
      public static void main(String[] args)

        {
                 
          int n=5;
          if(n>6)
                 System.out.println("c");
         else if(n>2)
                 System.out.println("b");
         else if(n>1)
                 System.out.println("a");
         else
                 System.out.println("NO");
         }

}

评分

参与人数 1技术分 +1 收起 理由
古银平 + 1 神马都是浮云

查看全部评分

回复 使用道具 举报
你这个是嵌套选择:if(n>2)是嵌套在if(n>1)这个选择语句的else中的;
你想要的结果是:
int n=5;
if(n<=1)
    System.out.println("NO");
else
{
if(n>1)
                 System.out.println("a");
if(n>2)
                 System.out.println("b");
if(n>6)
                 System.out.println("c");
         }

评分

参与人数 1技术分 +1 收起 理由
古银平 + 1 神马都是浮云

查看全部评分

回复 使用道具 举报
本帖最后由 李光耀 于 2012-11-23 13:09 编辑

if(如果条件成立,执行大括号里面的语句){

}else if(在上面的条件不成立的情况下,还有其他的可以能的条件,如果满足执行后面大括号里面的语句)
{

}else{
   上面的条件不成立的时候,执行的语句/
}

第一个if     n>1  所以就运行第一个if,下面的就不运行了。也就是如果符合第一个,后面的就不执行了{:soso_e195:}   正确求表扬~~
                                                                                                                                                                      错误求改正~~

评分

参与人数 1技术分 +1 收起 理由
古银平 + 1 神马都是浮云

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马