今天分享一個很好用的運算式 "Switch"
和一個常和"Switch"搭配的"enum"
"Switch"常常用在我們需要判斷收到什麼值時而要做什麼動作
其實這功能跟"If"很像,或著說就是化簡了滿滿的一排"If"
先大概介一下"Switch"
switch ( 變數 )
{
case 值1 : // If ( 變數 == 值1)
Function1;
break;
case 值2 : // else If ( 變數 == 值2)
Function2;
break;
defalut : // else
Function3;
break;
}
大概就像上面所說惖樣那,是一個很簡單易懂的東西,但是功能可以延伸的很強大
"enum"就比較像自己創造一個新的定義數值
可以把自己定義的變數轉換成數值,類似將人類看的懂的詞跟電腦看的懂的詞做一個橋梁
如下
public enum EnumTest
{
EnumTest1 = 1000,
EnumTest2 = 1001,
EnumTest3 = 1002,
EnumTest4 = 1003,
}
直接來實例吧
1.開啟Form專案,拉出button,textbox,label各一個
2.點擊button進入程式碼頁面,輸入下列程式
private void button1_Click(object sender, EventArgs e)
{
switch(textBox1.Text)
{
case "0":
label1.Text = "EnumTest1 = " + Convert.ToInt32(EnumTest.EnumTest1);
break;
case "1":
label1.Text = "EnumTest2 = " + Convert.ToInt32(EnumTest.EnumTest2);
break;
case "2":
label1.Text = "EnumTest3 = " + EnumTest.EnumTest3;
break;
case "3":
label1.Text = "EnumTest4 = " + EnumTest.EnumTest4;
break;
default:
label1.Text = "Default!! ";
break;
}
}
3.在class底下輸入
public enum EnumTest
{
EnumTest1 = 1000,
EnumTest2 = 1001,
EnumTest3 = 1002,
EnumTest4 = 1003,
}
4.執行結果
5.在textbox輸入不同值,按下button會使label出現不同結果
不同的結果是因為switch所選擇出來的
0,1 是將顯示的enum轉為我們自己定義的數字
2.3 是只顯示enum的文字
6.enum也很常出現在資料介面
如果你要和其他人交接資訊,別人不需要知道你內定的數值代表什麼意思
只要知道你enum的變數名程即可,可以更加方便人與人之前交流
7.enum也很容易出現在錯誤碼(Alarm)
可以定義程式傳出錯誤碼後,利用enum轉回使用者看的懂的文字
是不是很方便呢,其實switch搭配迴圈也有很有趣的應用
有空在把他整理起來^^
留言列表