黑马程序员技术交流社区

标题: 关于条件语句 [打印本页]

作者: zuiaichiyu    时间: 2013-11-13 18:05
标题: 关于条件语句
关于if语句虽然是一个比较简单的语句,看似很简单的东西,但是使用过程中经常用错。一直没有完全搞明白
第一种情况
if(条件){
        要执行的代码块
}
执行语句
第二种
if(条件){
        语句
}else{
        语句
}
第三种
if(表达式){
        语句
}else if(条件){
        语句
}
else {
        语句
}
问题一 第一种情况和第二种情况有什么区别,什么时候加else 什么时候不加else 最好举例说
问题二 第三种情况的else是不是可以不加,有什么影响

作者: hubby    时间: 2013-11-13 18:13
if 是假如  else if是否则 一般多判断的时候接else if  最后结束加个else就完了
作者: wjj410830911    时间: 2013-11-13 18:32
第一个问题  
else是否则的意思  在只有一种情况不需要加else的时候  尽量不加简短代码
比如
if(如果我是男人){
         System.out.println("我会抽烟,喝酒")
}

如果有2种情况
if(如果我是男人){
         System.out.println("我会抽烟,喝酒")
}else(那我就是女人){
System.out.println("我会化妆,逛街")
}
第二个问题
一般都是用else结尾的   因为最后都是只剩一种情况需要判断  只用else就可以了  没必要用else if
作者: 半夜雨半夜雨    时间: 2013-11-13 18:50
第一个问题:if语句满足条件,执行表达式,不满足则不执行。if-else语句,if语句满足条件,执行if语句的表达式,,否则执行else语句的表达式,如(a>b)?c:d.区别在于第一种不是强制的,而第二种强制必须执行if或者else。
第二个问题,当然要加if,因为这个语句是要进行第2次条件判断,才能执行接下来的else语句
作者: 不抛弃不放弃    时间: 2013-11-13 18:56
问题一 第一种情况和第二种情况有什么区别,什么时候加else 什么时候不加else 最好举例说
问题二 第三种情况的else是不是可以不加,有什么影响
if是流程控制语句,因为他提供了控制程序步骤的基本手段。这些语句决定了程序的走向。
第一个问题:    区别就是判断的情况不一样, 什么时候加else  什么时候不家else  ,这是根据你要怎么控制程序流程决定的。
  例如:不加else的if     public static void main(String []args){
                                         int a =1,b=100;
                                              if(a<b){     //我只判断着一种情况
                                                              a++;
                                                        }
                                               System.out.println(a);
                                             }
       同样的 加else的情况:   public static void main(String []args){
                                         int a =1,b=100;
                                              if(a<b){     //这里我判断了之后  如果为真想让a+1;如果为false  ,我想让b-1,  
                                                              //你什么时候用else和什么时候不用else,是取决于你想程序的流程怎么走的
                                                              a++;
                                                        }else{    b--; }
                                               System.out.println(a);
                                             }
第二个问题:  还是根据程序的实际情况来判断的   还是我上面的例子 给你演示一下
               public static void main(String []args){
                                         int a =1,b=100;
                                              if(a<b){     //我只判断着一种情况
                                                              a++;
                                                        } else if(a>b){//判断第二种情况
                                                                       b++;
                                                                   }//写到这里 没加else    那如果再加上else  和不加else 有什么区别呢  区别就是 你多判断一下你的情况
                                                                   else{  a+b;}//这是判断最后的一直情况
                                               System.out.println(a);
                                             }
              到这里我们可以看出  这个if就是控制程序流程的语句,根据不同的情况执行不同的部分,说通俗点的话,假如(if)你明天有时间我们就去看电影,如果(else  if)你后天有时间  我们后天去电影,否则(else)这两天都没时间 那我在带着。  如果没有这个else  就是我不一定在家呆着,可能我出去玩去了,加上了 else  到那天 我肯定在家呆着,   
   说了这么多废话    希望对你又帮助 ,呵呵  


作者: 付凯鹏    时间: 2013-11-13 20:25
第一种情况只有if条件句成立才会执行里面的执行代码块,而下面的执行语句在if条件句外面所以不论if条件句成不成立都会执行。第二种情况当if条件句成立执行if条件句里面的语句否则就执行else里面的语句。
第一种情况
if(我考了满分){
      System.out.println(“奖励你你一支笔”);
}
System.out.println(“好好学习,天天向上”);
第二种情况
if(我的成绩大于90){
      System.out.println("发给你奖状");
}else{
     System,out.println("好好学习吧");
}
第二个问题:else尽量放在结尾就行了,要不然就会容易报错
作者: java--周群    时间: 2013-11-16 20:45
如果有另外的结果就要用else,如果有其他需要执行的条件,就需要else if




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2