详解Java编程中if...else语句的嵌套写法


if...else if...else语句
if语句后面可以跟elseif…else语句,这种语句可以检测到多种可能的情况。
使用if,else if,else语句的时候,需要注意下面几点:
if语句至多有1个else语句,else语句在所有的elseif语句之后。
If语句可以有若干个elseif语句,它们必须在else语句之前。
一旦其中一个else if语句检测为true,其他的else if以及else语句都将跳过执行。
语法
if...else语法格式如下:
if(布尔表达式 1){
   //如果布尔表达式 1的值为true执行代码
}else if(布尔表达式 2){
   //如果布尔表达式 2的值为true执行代码
}else if(布尔表达式 3){
   //如果布尔表达式 3的值为true执行代码
}else {
   //如果以上布尔表达式都不为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("This is else statement");
   }
  }
}

以上代码编译运行结果如下:

Value of X is 30

嵌套的if…else语句
使用嵌套的if-else语句是合法的。也就是说你可以在另一个if或者elseif语句中使用if或者elseif语句。
语法
嵌套的if…else语法格式如下:
if(布尔表达式 1){
   ////如果布尔表达式 1的值为true执行代码
   if(布尔表达式 2){
      ////如果布尔表达式 2的值为true执行代码
   }
}
你可以像 if 语句一样嵌套 else if...else。
实例

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

复合 if- else if – else 语句小例子:

百分制转换为等级制

public class IfElseDemo06{
 public static void main(String[] args){
 int a=85;   //声明int 型变量a 并赋值85
 if (a>90){   //条件判断
  System.out.println("成绩"+a+",是A 等级");
 }else if (a>80){  //条件判断
  System.out.println("成绩"+a+",是B 等级");
 }else if (a>70){  //条件判断
  System.out.println("成绩"+a+",是C 等级");
 }else if (a>60){  //条件判断
  System.out.println("成绩"+a+",是D 等级");
 }else{
  System.out.println("成绩"+a+",是B 等级");
 }
 }
}

运行结果如图所示。

成绩85,是B等级

再来总结一下if-else语句的规则:

1)、if后的括号不能省略,括号里表达式的值最终必须返回的是布尔值
2)、如果条件体内只有一条语句需要执行,那么if后面的大括号可以省略,但这是一种极为不好的编程习惯。
3)、对于给定的if,else语句是可选的,else if 语句也是可选的
4)、else和else if同时出现时,else必须出现在else if 之后
5)、如果有多条else if语句同时出现,那么如果有一条else if语句的表达式测试成功,那么会忽略掉其他所有else if和else分支。
6)、如果出现多个if,只有一个else的情形,else子句归属于最内层的if语句


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3