可以將switch
語句作為另外一個switch
語句序列的一部分。即使內部和外部switch
的case
常數包含公共值,也不會產生任何衝突。
巢狀switch
語句的語法如下:
switch(ch1)
{
case 'A':
Console.WriteLine("This A is part of outer switch" );
switch(ch2)
{
case 'A':
Console.WriteLine("This A is part of inner switch" );
break;
case 'B': /* inner B case code */
}
break;
case 'B': /* outer B case code */
}
範例程式碼
using System;
namespace DecisionMaking
{
class Program
{
static void Main(string[] args)
{
int a = 199;
int b = 299;
switch (a)
{
case 199:
Console.WriteLine("This is part of outer switch ");
switch (b)
{
case 299:
Console.WriteLine("This is part of inner switch ");
break;
}
break;
}
Console.WriteLine("Exact value of a is : {0}", a);
Console.WriteLine("Exact value of b is : {0}", b);
Console.ReadLine();
}
}
}
當編譯和執行上述程式碼時,會產生以下結果:
This is part of outer switch
This is part of inner switch
Exact value of a is : 199
Exact value of b is : 299