1 package com.ibeve.demo;
2
3 public class SwitchDemo {
4 public static void main(String[] args) {
5
6 int x = 4;
7
8 // byte short int char
9 switch (x) {
10 case 4:
11 System.out.println("a");
12 break;
13 case 5:
14 System.out.println("b");
15 break;
16 case 6:
17 System.out.println("c");
18 break;
19 default:
20 System.out.println("d");
21 break;
22 }
23
24 int a = 4, b = 3;
25 char ch = '+';
26
27 switch (ch) {
28 case '+':
29 System.out.println(a + b);
30 break;
31 case '-':
32 System.out.println(a - b);
33 break;
34 case '*':
35 System.out.println(a * b);
36 break;
37 case '/':
38 System.out.println(a / b);
39 break;
40 default:
41 System.out.println("非法数值");
42 break;
43 }
44
45 int y = 3;
46 switch (y) {
47 case 3:
48 case 4:
49 case 5:
50 System.out.println(y + "春季");
51 break;
52 case 6:
53 case 7:
54 case 8:
55 System.out.println(y + "夏季");
56 break;
57 case 9:
58 case 10:
59 case 11:
60 System.out.println(y + "秋季");
61 break;
62 case 12:
63 case 13:
64 case 14:
65 System.out.println(y + "冬季");
66 break;
67 default:
68 System.out.println("参数不合法");
69 break;
70 }
71
72 /**
73 * if 和 switch 语句很像
74 * 具体什么场景下,应用哪个语句呢?
75 * 如果判断的具体数值不多,而是符合 byte short int char 这四种类型
76 * 虽然两个语句都可以使用,建议使用 switch 语句,因为效率稍高
77 *
78 * 其他情况下,对区间判断,对结果为 boolean 类型判断,使用 if, if 的使用范围更广
79 */
80 }
81 }