选择结构if语句和switch语句的区别

Posted fariryland

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了选择结构if语句和switch语句的区别相关的知识,希望对你有一定的参考价值。

------- android培训java培训、期待与您交流! ----------

 

1.选择结构if语句格式及其使用 

A:if语句的格式:

  if(比较表达式1) {
     语句体1;
  }else if(比较表达式2) {
     语句体2;
  }else if(比较表达式3) {
     语句体3;
  }
     ...
  else {
    语句体n+1;
  }
B:执行流程:
  首先计算比较表达式1看其返回值是true还是false,
  如果是true,就执行语句体1,if语句结束。
  如果是false,接着计算比较表达式2看其返回值是true还是false,
  如果是true,就执行语句体2,if语句结束。
  如果是false,接着计算比较表达式3看其返回值是true还是false,
  如果都是false,就执行语句体n+1。
C:注意事项:最后一个else可以省略,但是建议不要省略,可以对范围外的错误值提示 
eg:
 1 import java.util.Scanner;
 2 class Demo_If {
 3     public static void main(String[] args) {
 4         Scanner sc = new Scanner(System.in);   //键盘输入,
 5         while(true) {
 6         System.out.println("请您输入成绩");    //提示输入
 7         int a = sc.nextInt();                    //键盘输入用int类型接收
 8         if (a>100|a<0) {                        //死循环,方便测试
 9             System.out.println("您输入的成绩有误");
10         }else if (a>=90&a<=100) {
11             System.out.println("A等");
12         }else if (a>=80&a<90) {
13             System.out.println("B等");
14         }else if (a>=70&a<80) {
15             System.out.println("C等");
16         }else if (a>=60&a<70) {
17             System.out.println("D等");
18         }else if (a<60) {
19             System.out.println("E等");
20         }else {
21             System.out.println("您输入的成绩有误");
22         }
23         }
24 }
25 }

 

2.选择结构switch语句格式及其使用
A:switch格式:
  switch(表达式) {
        case 值1:
      语句体1;
      break;
       case 值2:
      语句体2;
      break;
          …
       default:
      语句体n+1;
      break;
        }
 
B:switch语句的格式解释
  (基本数据类型,只要能提升为int的都可以,引用数据类型中的枚举(JDK1.5)和String(JDK1.7))
C:执行流程
   先计算表达式的值
  然后和case后面的匹配,如果有就执行对应的语句,否则执行default控制的语句
eg
 1 import java.util.*;
 2 class  Dome_If3{
 3     public static void main(String[] args) {
 4         //System.out.println("Hello World!");
 5         Scanner sc =new Scanner(System.in);        //键盘录入
 6         while(true) {                                //死循环方便测试
 7         System.out.println("请您    输入要转换的星期数");  //键盘录入提示
 8         in week = sc.nextInt();
 9         switch(week) {
10             case 1:
11                 System.out.println("星期1");
12             break;
13             case 2:
14                 System.out.println("星期2");
15             break;
16             case 3:
17                 System.out.println("星期3");
18             break;
19             case 4:
20                 System.out.println("星期4");
21             break;
22             case 5:
23                 System.out.println("星期5");
24             break;
25             case 6:
26                 System.out.println("星期6");
27             break;
28             case 7:
29                 System.out.println("星期天");
30             break;
31             default:
32                 System.out.println("您输入的数字有误,请重新输入");
33         }
34       }
35     }
36 }

 

3:总结switch语句和if语句的各自使用场景
  switch建议判断固定值的时候用
  if建议判断区间或范围的时候用    
  *用switch能做的,用if都能做,单反过来则不行

------- Windows Phone 8手机开发.Net培训、期待与您交流! -------

以上是关于选择结构if语句和switch语句的区别的主要内容,如果未能解决你的问题,请参考以下文章

JAVA-初步认识-第三章-语句-switch

Java 分支结构 - if...else/switch

Java 分支结构 - if...else/switch

Java 分支结构 - if...else/switch

Java选择结构------------if语句 switch语句

Java入门八 控制语句之选择结构-if结构和Switch结构