程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> 關於C# >> C# 枚舉類型 概述

C# 枚舉類型 概述

編輯:關於C#
 

枚舉類型是一種的值類型,它用於聲明一組命名的常數。與字符串相比,用枚舉的好處就是限定了變量的取值范圍,程序處理起來更方便。
(1)枚舉的聲明
訪問修辭符 enum 枚舉名:基礎類型
{
枚舉成員
}
基礎類型必須能夠表示該枚舉中定義的所有枚舉數值。枚舉聲明可以顯式地聲明 byte、sbyte、short、ushort、int、uint、long 或 ulong 類型作為對應的基礎類型。沒有顯式地聲明基礎類型的枚舉聲明意味著所對應的基礎類型是 int。
(2)枚舉成員
每個枚舉成員均具有相關聯的常數值。此值的類型就是枚舉的基礎類型。每個枚舉成員的常數值必須在該枚舉的基礎類型的范圍之內。
示例:
public enum TimeofDay:uint
{
Morning=-3,
Afternoon=-2,
Evening=-1
}
產生編譯時錯誤,原因是常數值 -1、-2 和 –3 不在基礎整型 uint 的范圍內。
(3)枚舉成員默認值
在枚舉類型中聲明的第一個枚舉成員它的默值為零。
以後的枚舉成員值是將前一個枚舉成員(按照文本順序)的值加 1 得到的。這樣增加後的值必須在該基礎類型可表示的值的范圍內;否則,會出現編譯時錯誤。
示例:
public enum TimeofDay:uint
{
Morning,
Afternoon,
Evening
}
Morning的值為0,Afternoon的值為1,Evening的值為2。
(4)為枚舉成員顯示賦值
允許多個枚舉成員有相同的值.
沒有顯示賦值的枚舉成員的值,總是前一個枚舉成員的值+1.
示例
public enum Number
{
a=1,
b,
c=1,
d
}
b的值為2,d的值為2.
注意:以上枚舉值都不能超過它的基礎類型范圍。否則會報錯.
(5)枚舉類型與基礎類型的轉換
基礎類型不能隱式轉換為枚舉類型
枚舉類型也不能隱式轉換為基礎類型
示例:
public enum Number
{
a,
b,
c,
d
}

class Test
{
public static void Main()
{
int i=Number.a;//錯誤,要強制類型轉換(int)Number.a
Number n;
n=2 //錯誤,要強制類型轉換(Number)2
}
}

(6)使用枚舉類型
<數據類型> 變量名= <數據類型>.枚舉成員

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved