关于switch的小技巧
switch中的case穿越
1using System;
2
3class SwitchSample
4{
5 public static void Main()
6 {
7 Console.WriteLine("Please enter the letter:");
8 string letter = Console.ReadLine();
9
10 switch(letter)
11 {
12 case "a":
13 case "A":
14 case "b":
15 case "B":
16 Console.WriteLine("it's Ok");
17 break;
18 case "c":
19 case "C":
20 default:
21 Console.WriteLine("default!!!!!");
22 break;
23 }
24 }
25}
2
3class SwitchSample
4{
5 public static void Main()
6 {
7 Console.WriteLine("Please enter the letter:");
8 string letter = Console.ReadLine();
9
10 switch(letter)
11 {
12 case "a":
13 case "A":
14 case "b":
15 case "B":
16 Console.WriteLine("it's Ok");
17 break;
18 case "c":
19 case "C":
20 default:
21 Console.WriteLine("default!!!!!");
22 break;
23 }
24 }
25}
输入a
运行结果
it's ok
当case中放空语句的时候,流程控制会直接穿越这个case到下一个case,直到非空语句为止,所以上面的程序当我们输入a的时候,会直接穿越到16行执行。我们可以利用这个特点让多个条件执行同一个语句。