標籤:
一、枚舉類型:
枚舉類型是一種獨特的實值型別,它用於聲明一組具有相同性質的常量。
1、建立一個控制台應用程式通過枚舉來判斷當前日期是星期幾:
1 class Program 2 { 3 enum MyDate //使用enum建立枚舉 4 { 5 Sun = 0, //設定枚舉值名稱Sun,枚舉值為0 6 Mon = 1, //設定枚舉值名稱Mon,枚舉值為1 7 Tue = 2, //設定枚舉值名稱Tue,枚舉值為2 8 Wed = 3, //設定枚舉值名稱Wed,枚舉值為3 9 Thi = 4, //設定枚舉值名稱Thi,枚舉值為410 Fri = 5, //設定枚舉值名稱Fri,枚舉值為511 Sat = 6 //設定枚舉值名稱Sat,枚舉值為612 }13 14 static void Main(string[] args)15 {16 int k = (int)DateTime.Now.DayOfWeek; //擷取代表星期幾的傳回值17 switch (k)18 {19 //如果k等於枚舉變數MyDate中的Sun的枚舉值,則輸出今天是星期日20 case (int)MyDate.Sun: Console.WriteLine("今天是星期日"); break;21 //如果k等於枚舉變數MyDate中的Mon的枚舉值,則輸出今天是星期一22 case (int)MyDate.Mon: Console.WriteLine("今天是星期一"); break;23 //如果k等於枚舉變數MyDate中的Tue的枚舉值,則輸出今天是星期二24 case (int)MyDate.Tue: Console.WriteLine("今天是星期二"); break;25 //如果k等於枚舉變數MyDate中的Wed的枚舉值,則輸出今天是星期三26 case (int)MyDate.Wed: Console.WriteLine("今天是星期三"); break;27 //如果k等於枚舉變數MyDate中的Thi的枚舉值,則輸出今天是星期四28 case (int)MyDate.Thi: Console.WriteLine("今天是星期四"); break;29 //如果k等於枚舉變數MyDate中的Fri的枚舉值,則輸出今天是星期五30 case (int)MyDate.Fri: Console.WriteLine("今天是星期五"); break;31 //如果k等於枚舉變數MyDate中的Sat的枚舉值,則輸出今天是星期六32 case (int)MyDate.Sat: Console.WriteLine("今天是星期六"); break;33 }34 Console.ReadLine();35 36 }37 }
二、類型轉換
類型轉換時將一種類型轉換為另一種類型。轉換可以是隱式轉換或者是顯示轉換
1、隱式轉換
所謂隱式轉換就是不需要聲明就能進行的轉換
源類型 |
目 標 類 型 |
sbyte |
short、int 、long、folat、double、decimal |
byte |
short、ushort、int、uint、long、float、double或decimal |
short |
int、long、ulong、float、double或decimal |
ushort |
int、uint、long、ulong、float、double或decimal |
int |
long、float、double或decimal |
uint |
int、uint、long、float、double或decimal |
char |
ushort、int、uint、long、ulong、float、double或decimal |
float |
double |
ulong |
float、double或decimal |
long |
float、double或decimal |
將int類型的值隱式轉換成long類型
1 int i=927; //聲明一個整形變數i並初始化為927 2 long j=i; //隱式轉換成long型
2、顯示轉換
顯示轉換也可以稱為強制轉換,需要在代碼中明確地聲明要轉換的類型。如果要在不存在的隱式轉換的類型之間轉換,就需要使用顯示轉換。
顯式類型轉換表
源類型 |
目 標 類 型 |
sbyte |
byte、ushort、uint、ulong 或 char |
byte |
Sbyte 或 char |
short |
sbyte、byte、ushort、uint、ulong 或 char |
ushort |
sbyte、byte、short 或 char |
int |
sbyte、byte、short、ushort、uint、ulong 或 char |
uint |
sbyte、byte、short、ushort、int 或 char |
long |
sbyte、byte、short、ushort、int、uint、ulong 或 char |
ulong |
sbyte、byte、short、ushort、int、uint、long 或 char |
char |
sbyte、byte 或 short |
float |
sbyte、byte、short、ushort、int、uint、long、ulong、char 或 decimal |
double |
sbyte、byte、short、ushort、int、uint、long、ulong、char、float 或 decimal |
decimal |
sbyte、byte、short、ushort、int、uint、long、ulong、char、float 或 double |
顯式轉換包含所有隱式轉換和顯式轉換,因此總是可以使用強制轉換運算式從任何數實值型別轉換為任何其他的數實值型別。
建立控制台應用程式,將double類型的x進行顯示類型轉換
1 static void Main(string [] age)2 {3 double x=19810927.0112; //建立double類型變數x4 int y=(int)x; //顯式轉換成變數類型Y5 Console.WriteLine(y); //輸出整形變數y6 Coneole.ReadLine();7 }
也可以通過Convert關鍵字來進行顯式類型轉換;
建立控制台應用程式,通過Convert關鍵字進行顯式類型轉換。
1 double x=19810927.0112; //建立double類型變數x2 int y=Convert.ToInt32(x); //通過Convert關鍵字轉換3 Console.WriteLine(y); //輸出整形變數y4 Console.ReadLine();
C#基礎-變數與常量(2)