使用enum的好處,提高程式的可讀性
像本例 男生是Male,女生是Female,我們一看就知道
case (short)Sex.Male://值為1
MessageBox.Show("男生");
break;//離開swith
case (short)Sex.Female://值為0
MessageBox.Show("女生");
break;//離開swith
而如果是用數字表示,就會搞不清楚那個是男 那個是女
case 1://值為1
MessageBox.Show("男生");
break;//離開swith
case 0://值為0
MessageBox.Show("女生");
break;//離開swith
使用enum有以下幾點要注意:
enum不能於方法內宣告
資料型別必須是byte、sbyte、short、ushort、int、unit、long或ulong型別
預設的預料型別為int
若列舉項目沒有給定任何整數值,則預設第一個列舉值為0,第二個列舉值為1,
以此類推
float與double不可為enum的資料型別
以下為本例程式碼及註解
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Windows.Forms;
- namespace Enum_ex
- {
- public partial class Form1 : Form
- {
- public Form1()
- {
- InitializeComponent();
- cboNum.Items.Add("0");//集合索引值0的值為0
- cboNum.Items.Add("1");//集合索引值1的值為1
- cboNum.SelectedIndex = 1;//設定 預設索引值為1
- }
- public enum Sex : short
- {
- Female = 0,//enum每行以,結尾
- Male = 1,
- };
- private void btnShow_Click(object sender, EventArgs e)
- {
- short Num = 0;
- if (cboNum.Text != "")
- {
- Num = short.Parse(cboNum.Text);//將選取文字轉為short型別
- }
- switch (Num)
- {
- case (short)Sex.Male://值為1
- MessageBox.Show("男生");
- break;//離開swith
- case (short)Sex.Female://值為0
- MessageBox.Show("女生");
- break;//離開swith
- default:
- MessageBox.Show("數值不在範圍內");//非男非女 才會執行到這邊 下拉選單只有 0 1 可以選,所以這個基本上不可能發生
- break;//離開swith
- }
- }
- }
- }
0 意見:
張貼留言