Java 流程控制 之 条件判断语句

一、判断语句

  1、判断语句1-- 单 if 语句

    语法格式:

if(关系表达式){
  语句体;
}

     执行流程:

      •  首先判断关系表达式看其结构是 true 还是 false;
      •     如果是 true 就执行语句体;
      •     如果是 false 就不执行语句体。

    流程图:

  

  2、判断语句2-- if...else 语句

    语法格式:

if(关系表达式) {
  语句体1;
}else {
  语句体2;
}

    执行流程:

      •   首先判断关系表达式看其结果是 true 还是  false; 
      •      如果是 true 就执行语句体1; 
      •     如果是 false 就执行语句体2;

      流程图:

  

  3、判断语句3 -- if...else if...else 语句

    语法格式:

if (判断条件1) {
  执行语句1;
} else if (判断条件2) {
  执行语句2;
}
...
}else if (判断条件n) {
  执行语句n;
} else {
  执行语句n+1;
}

    执行流程:

      •    首先判断关系表达式1 看其结果是 true 还是 false;
      •       如果是 true就执行语句体1;
      •       如果是 false 就继续判断关系表达式2看其结果是 true 还是 false;
      •       如果是 true 就执行语句体 2;
      •       如果是 false 就继续判断关系表达式... 看其结果是 true 还是  false;
      •       .....
      •       如果没有任何关系表达式为 true,就执行语句体 n+1

   流程图: 

  

  4、if 语句和三元运算符的互换

    在某些简单的应用中, 可以使用 if...else 语句和三元运算符互换使用的。这样看起来更简便一些。

   Demo:

 1 public static void main(String[] args) {
 2   int a = 10;
 3   int b = 20;
 4   //定义变量,保存a和b的较大值
 5   int c;
 6   if(a > b) {
 7     c = a;
 8   } else {
 9     c = b;
10   }
11   //可以上述功能改写为三元运算符形式
12   c = a > b ? a:b;
13 }

二、选择语句

  1、选择语句 -- switch

    语句格式:

switch(表达式) {
case 常量值1:
  语句体1;
  break;
case 常量值2:
  语句体2;
  break;
...
default:
  语句体n+1;
  break;
}

    执行流程:

      •  首先计算出表达式的值
      •     其次,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结 束。
      •     最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束掉。

   流程图:

  

    注意:switch语句中,表达式的数据类型,可以是byte,short,int,char,enum(枚举),JDK7后可以接收字符串(String)。

  2、case 的穿透性

    在switch语句中,如果case的后面不写break,将出现穿透现象,也就是不会在判断下一个case的值,直接向后运 行,直到遇到break,或者整体switch结束。

   Demo:

 1 public static void main(String[] args) {
 2   int i = 5;
 3 switch (i){
 4   case 0:
 5     System.out.println("执行case0");
 6     break;
 7   case 5:
 8     System.out.println("执行case5");
 9   case 10:
10     System.out.println("执行case10");
11   default:
12     System.out.println("执行default");
13   }
14 }

     上述程序中,执行case5后,由于没有break语句,程序会一直向后走,不会在判断case,也不会理会break,直接 运行完整体switch。

     Tips:在使用 switch 语句时,写上  break 语句是非常有必要的。

猜你喜欢

转载自www.cnblogs.com/niujifei/p/11231908.html