## Java条件语句


原文链接


Java条件语句

你将学习到:
1. if...else条件语句
2. switch 条件语句
3. 条件运算符
4. 三目运算符


if...else 语法

if 语句:

if(布尔表达式)
{
   //如果布尔表达式为true将执行的语句
}

if...else语句:

if(布尔表达式){
   //如果布尔表达式的值为true
}else{
   //如果布尔表达式的值为false
}

if...else if...else 语句:

if(布尔表达式 1){
   //如果布尔表达式 1的值为true执行代码
}else if(布尔表达式 2){
   //如果布尔表达式 2的值为true执行代码
}else if(布尔表达式 3){
   //如果布尔表达式 3的值为true执行代码
}else {
   //如果以上布尔表达式都不为true执行代码
}

嵌套的 if…else 语句:

if(布尔表达式 1){
   ////如果布尔表达式 1的值为true执行代码
   if(布尔表达式 2){
      ////如果布尔表达式 2的值为true执行代码
   }
}

例子

public class Test {
   public static void main(String args[]){
      int x = 30;
 
      if( x == 10 ){
         System.out.print("Value of X is 10");
      }else if( x == 20 ){
         System.out.print("Value of X is 20");
      }else if( x == 30 ){
         System.out.print("Value of X is 30");
      }else{
         System.out.print("这是 else 语句");
      }
   }
}

运行结果是:Value of X is 30
public class Test {
 
   public static void main(String args[]){
      int x = 30;
      int y = 10;
 
      if( x == 30 ){
         if( y == 10 ){
             System.out.print("X = 30 and Y = 10");
          }
       }
    }
}
运行结果是:
X = 30 and Y = 10

switch...case语法

switch(expression){
    case value :
       //语句
       break; //可选
    case value :
       //语句
       break; //可选
    //你可以有任意数量的case语句
    default : //可选
       //语句
}

语法糖

  • switch case 执行时,一定会先进行匹配,匹配成功返回当前 case 的值,再根据是否有 break,判断是否继续输出,或是跳出判断。

  • switch 语句中的变量类型可以是: byte、short、int 或者 char。从 Java SE 7 开始,switch 支持字符串 String 类型了,同时 case 标签必须为字符串常量或字面量。

  • 当变量的值与 case 语句的值相等时,那么 case 语句之后的语句开始执行,直到 break 语句出现才会跳出 switch 语句。

  • 小心case语句穿透,就是上个case忘记写break;导致执行到下个句子,例如下面例子的B和C

switch...case例子

public class Test {

   public static void main(String args[]){
      //char grade = args[0].charAt(0);
      char grade = 'C';

      switch(grade)
      {
         case 'A' :
            System.out.println("Excellent!"); 
            break;
         case 'B' :
         case 'C' :
            System.out.println("Well done");
            break;
         case 'D' :
            System.out.println("You passed");
         case 'F' :
            System.out.println("Better try again");
            break;
         default :
            System.out.println("Invalid grade");
      }
      System.out.println("Your grade is " + grade);
   }
}

运行结果:
Well done
Your grade is a C

条件运算符

运算符 用法例子 返回 true 的条件……
> a > b a 大于 b
>= a >= b a 大于或等于 b
< a < b a 小于 b
<= a <= b a 小于或等于 b
== a == b a 等于 b
!= a != b a 不等于 b
&& a && b 如果 a 和 b 均为 true,则有条件地计算 b(如果 a 为 false,则不计算 b)
a || b a 或 b 为 true,则有条件地计算 b(如果 a 为 true,则不计算 b)
! !a a 为 false
& a & b a 和 b 均为 true,则始终计算 b
| a | b 如果 a 或 b 为 true,则始终计算 b
^ a ^ b a 和 b 不同

三目运算符

语法:
(条件) ? 结果一 : 结果二;
当条件成立,执行结果一,否则执行结果二。
如:

if(a

你可能感兴趣的:(## Java条件语句)