热门话题白皮书HR资料
#java系列课程#条件分支语句
2024.06.14

分支语句


分支语句有两种:


  • if分支

  • switch分支


今天看if分支


if有三种形式


Java条件语句之 if


我们在生活中也常常会做出判断和选择。比如,如果我们的成绩大于90,则保研。这种先判断后决定就要用if语句来实现。计算机也一样,和我们的思考过程是一样的,不会直接就做出决断了。


表达式:


if(boolean expression){


statement or block;



}



Java条件语句之 if...else



if...else 语句的操作比 if 语句多了一步:  当条件成立时,则执行 if 部分的代码块; 条件不成立时,则进入 else 部分。例如,如果考试成绩大于 90 分,则保研,否则扣除奖学金资格。


表达式:


if(boolean expression){


statement or block;



}else{

  statement or block;


}


Java条件语句之多重 if


多重 if 语句,在条件 1 不满足的情况下,才会进行条件 2 的判断;当前面的条件均不成立时,才会执行 else 块内的代码。例如,如果考试成绩大于 90 分,则保研 ,如果成绩介于 60 分至 90 分之间,则取消奖学金资格,否则补考。


if(boolean expression){


statement or block;



}else if(boolean expression){

  statement or block;


}else if(boolean expression){

  statement or block;


}else if(boolean expression){

  statement or block;


}


来看这段代码

public class Niukewang{


   public static void main(String [] args){


     int i;

     i=11;

     if(i<30){

         System.out.println("太小");

      }

     if(i==30){

         System.out.println("正好");

      }

     if(i>30){

         System.out.println("太大");

      }


     }


}


结果肯定为太小

就是一个和我们大脑正常思考问题时候所想的问题是一样的,因为计算机一看符合小于50,那么自然就是执行这条所以为太小


再来看一个例子


public class Niukewang{


   public static void main(String [] args){


     int age=44;

     

     if(age>20){

         System.out.println("青年人");

      }else if(age>40){

         System.out.println("中年人");

      }else if(age>60){

         System.out.println("老年人");

      }


     }


}


这是一个非常经典的例子!结果应该为多少呢?当然这个是错误的,那么错在哪里呢?


因为第一个和第二个的条件是重合的,把第三个否了,并不是前两个,所以肯定不对!那么正确的话应该怎么写呢




public class Niukewang{


   public static void main(String [] args){


     int age=44;

     

     if(age>60){

         System.out.println("老年人");

      }else if(age>40){

         System.out.println("中年人");

      }else if(age>20){

         System.out.println("青年人");

      }


     }


}




还有别的写法,如:


public class Niukewang{


   public static void main(String [] args){


     int age=44;

     

     if(age>20&&age<40){//这里不能按照数学那么写20<age<40

         System.out.println("青年人");

      }else if(age>40&&age<60){

         System.out.println("中年人");

      }else {

         System.out.println("老年人");

      }


     }


}


也就是说实在不会就要写的清楚些。


if else里面的意思是把前面全部否定了,这里要注意,不要出现这种分不清的情况!


练习:用if else写出判断闰年


欢迎更多获得内推的来牛客网写面经哦~~~你们的反馈就是我们最大的安慰!



牛客网—程序员必备求职神器

刷真题,练算法,看面经,得内推
www.nowcoder.com
长按二维码,把IT笔试面试题库装进


点击下方阅读更多参与回帖赢得图书!