ToB企服应用市场:ToB评测及商务社交产业平台

标题: 深入明确 Java 中的 Switch 语句 [打印本页]

作者: 渣渣兔    时间: 2024-9-29 03:50
标题: 深入明确 Java 中的 Switch 语句
深入明确 Java 中的 Switch 语句


在 Java 编程中,switch 语句是一种强大的控制布局,能够根据表达式的值选择实行不同的代码块。本文将具体先容 switch 的基本语法、使用案例、注意事项以及与 if 语句的选择。

基本语法

switch 语句的基本语法如下:
  1. switch (表达式) {
  2.     case 常量1:
  3.         // 执行代码块1
  4.         break;
  5.     case 常量2:
  6.         // 执行代码块2
  7.         break;
  8.     ...
  9.     default:
  10.         // 执行默认代码块
  11. }
复制代码

关键点


程序流程图



示例代码

以下是一个简单的示例,展示怎样根据输入的字符输出对应的星期几:
  1. import java.util.Scanner;
  2. public class SwitchExample {
  3.     public static void main(String[] args) {
  4.         Scanner in = new Scanner(System.in);
  5.         System.out.println("请输入一个字符(a-g):");
  6.         char c1 = in.next().charAt(0);
  7.         switch (c1) {
  8.             case 'a':
  9.                 System.out.println("星期一");
  10.                 break;
  11.             case 'b':
  12.                 System.out.println("星期二");
  13.                 break;
  14.             case 'c':
  15.                 System.out.println("星期三");
  16.                 break;
  17.             case 'd':
  18.                 System.out.println("星期四");
  19.                 break;
  20.             case 'e':
  21.                 System.out.println("星期五");
  22.                 break;
  23.             case 'f':
  24.                 System.out.println("星期六");
  25.                 break;
  26.             case 'g':
  27.                 System.out.println("星期日");
  28.                 break;
  29.             default:
  30.                 System.out.println("输入的内容不正确");
  31.         }
  32.         System.out.println("退出Switch,继续执行程序");
  33.     }
  34. }
复制代码
注意事项

在使用 switch 语句时,需注意以下几点:
使用细节

  1. public class SwitchDetail {
  2.     public static void main(String[] args) {
  3.         char c = 'a';
  4.         System.out.println(c);  // 输出 a
  5.         System.out.println((int) c);  // 输出 97
  6.         switch (c) {
  7.             case 'a':
  8.                 System.out.println("ok1");
  9.                 break;
  10.             case 'b':
  11.                 System.out.println("ok1");
  12.                 break;
  13.             case 20:  // char 类型可以转换为整数
  14.                 System.out.println("ok1");
  15.                 break;
  16.             default:
  17.                 System.out.println("输入错误。");
  18.         }
  19.       //使用String类型示例,过程如下
  20.                 // char d = "a"
  21.                 // switch(c){
  22.                 //         case "a":
  23.                 //                 System.out.println("ok1");
  24.                 //                 break;
  25.                 //         case "b":
  26.                 //                 System.out.println("ok1");
  27.                 //                 break;
  28.                 //         case 20:     //这里 会报错,这里的类型和String类型不能转换
  29.                 //                 System.out.println("ok1");
  30.                 //                 break;
  31.                 //         default:
  32.                 //                 System.out.println("输入错误。");
  33.                 // }
  34.     }
  35. }
复制代码
训练

训练 1:小写字母转大写

  1. import java.util.Scanner;
  2. public class SwitchExercise {
  3.     public static void main(String[] args) {
  4.         Scanner in = new Scanner(System.in);
  5.         System.out.println("请输入一个小写英文字母(a-e):");
  6.         char c1 = in.next().charAt(0);
  7.         
  8.         switch (c1) {
  9.             case 'a':
  10.             case 'b':
  11.             case 'c':
  12.             case 'd':
  13.             case 'e':
  14.                 System.out.println(c1 + "的大写是" + (char) (c1 - 32));
  15.                 break;
  16.             default:
  17.                 System.out.println("other");
  18.         }
  19.         
  20.     }
  21. }
复制代码
训练 2:结果判断

  1. // 这里使用编程思路,将成绩的范围转换成一个整数类型来进行判断,
  2. //  [0-60]使用除法的思想把转换成一个整数
  3. //  [60- 100] 同理使用相同的思路
  4. import java.util.Scanner;
  5. public class SwitchExercise02 {
  6.     public static void main(String[] args) {
  7.         Scanner in = new Scanner(System.in);
  8.         System.out.println("请输入你的分数:");
  9.         int grade = in.nextInt();
  10.         if (grade >= 0 && grade <= 100) {
  11.             switch (grade / 60) {
  12.                 case 0:
  13.                     System.out.println("不合格");
  14.                     break;
  15.                 case 1:
  16.                     System.out.println("合格");
  17.                     break;
  18.                 default:
  19.                     System.out.println("输入有误,请重新输入!!!");
  20.             }
  21.         }
  22.     }
  23. }
复制代码
训练 3:季节判断

  1. // 穿透的意思就是使用一个条件能够使所有的条件都能够符合使用
  2. import java.util.Scanner;
  3. public class SwitchExercise03 {
  4.     public static void main(String[] args) {
  5.         Scanner in = new Scanner(System.in);
  6.         System.out.println("请输入一个月份:");
  7.         int month = in.nextInt();
  8.         switch (month) {
  9.             case 3:
  10.             case 4:
  11.             case 5:
  12.                 System.out.println("春季");
  13.                 break;
  14.             case 6:
  15.             case 7:
  16.             case 8:
  17.                 System.out.println("夏季");
  18.                 break;
  19.             case 9:
  20.             case 10:
  21.             case 11:
  22.                 System.out.println("秋季");
  23.                 break;
  24.             case 12:
  25.             case 1:
  26.             case 2:
  27.                 System.out.println("冬季");
  28.                 break;
  29.             default:
  30.                 System.out.println("输入有误,请重新输入!!!");
  31.         }
  32.     }
  33. }
复制代码
switch 与 if 的选择

通过上述内容,信赖你对 Java 中的 switch 语句有了更深入的明确。希望这篇文章能帮助你在编程中更加得心应手!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4