一、列舉型別:
列舉型別是一種獨特的值型別,它用於宣告一組具有相同性質的常量。編寫與日期相關的應用程式時,經常需要使用年、月、日、星期等日期資料,可以將這些資料組織成多個不同名稱的列舉型別。使用列舉型別可以增加程式的可讀性和可維護性。同時,列舉可以避免型別錯誤。
1、在c#
中使用關鍵字
enum
類宣告列舉;
1enum
列舉名2
2、建立乙個控制台應用程式通過列舉來判斷當前日期是星期幾:
1class
program213
static
void main(string
args)
1433
console.readline();34}
35 }
二、型別轉換
型別轉換時將一種型別轉換為另一種型別。轉換可以是隱式轉換或者是顯示轉換
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
intlong、
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
型別
1int i=927; //
宣告乙個整形變數i並初始化為927
2long 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
intsbyte、
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
進行顯示型別轉換
1static
void main(string
age)
2
也可以通過convert
關鍵字來進行顯式型別轉換;
建立控制台應用程式,通過convert
關鍵字進行顯式型別轉換。
1double x=19810927.0112; //
建立double型別變數x
2int y=convert.toint32(x); //
通過convert關鍵字轉換
3 console.writeline(y); //
輸出整形變數y
4 console.readline();
三、裝箱和拆箱
將值型別轉換為引用型別的過程叫做裝箱,相反,將引用型別轉換為值型別的過程叫做拆箱。
1、裝箱:裝箱允許將值型別隱式轉換成引用型別。
宣告整形變數i並賦值
2008
。然後將其複製到裝箱物件
obj中,最後再改變變數i的值
1static
void main(string
args)
2,裝箱之後的物件為
", i, obj);
6 i = 927; //
重新將i賦值為927
7 console.writeline("
2.i的值為,裝箱之後的物件為
", i, obj);
8console.readline();
9 }
將值型別變數的值複製到裝箱得到的物件中,裝箱後改變值型別變數的值,並不會影響裝箱物件的值
1、拆箱:拆箱允許將引用型別顯示轉換為值型別。
宣告變數i並賦值為112.然後將其複製到裝箱物件obj中。最後進行拆箱操作,將裝箱物件obj賦值給整形變數j。
1static
void main(string
args)
2,裝箱之後物件為
",i,obj);
6int j=(int )obj; //
執行拆箱操作
7 console.writeline("
拆箱操作:裝箱物件為,值為
", obj, j);
8console.readline();
9 }
拆箱後得到的值型別資料的值與裝箱物件相等。在拆箱操作中,要符合型別一制的原則,否則會出現異常
C語言基礎 變數與常量
常量 在程式執行過程中,其值不能被改變的量稱為常量 常用的常量有以下幾類 1 整型常量 如1000,12345,345等都是整型常量 2 實型常量 有兩種表現形式 十進位制小數形式,如123.456,0.345,3.4,0.0,12.0 指數形式 如12.43e3 代表12.43x103 10 3 ...
C 變數與常量
1 變數概念 變數是程式可操作的儲存區的名稱,而每乙個變數中都有特定的型別,而型別決定了變數的儲存大小。2 變數概念 變數定義就是告訴編譯器在何處建立變數的儲存,以及如何建立變數的儲存。變數定義指定乙個資料型別,幷包含了該型別的乙個或多個變數的列表。3 變數的定義 在c中,如何定義變數了,請看如下的...
C 變數與常量
變數表示儲存位置,變數必須有確定的資料型別。c 的型別安全的含義之一就是確保變數的儲存位置容納著合適的型別。可以將c 中的變數分為靜態變數,例項變數,傳值引數,引用引數,輸出引數,陣列引數和本地變數共七種。本地變數則是在方法體內的臨時變數。靜態變數和例項變數主要是針對類或結構內的資料成員 又叫域 而...