一、變量的基本概念:
變量本事是用來存儲特定類型的數據,可以隨時改變變量中所存儲的數據值。變量具有名稱、類型和值。變量的值是可以發生變化的,使用變量之前必須先聲明變量,即指定變量的類型和名稱。
1、變量類型:
變量類型根據其定義分為:一種是值類型,另一種是引用類型。
二、變量類型;
1、值類型特征:
① 值類型變量都存儲在堆棧中;
② 訪問值類型變量時,一般都是直接訪問其實例;
③ 每個值類型變量都有自己的數據副本,因此對一個值類型變量操作不會影響其他變量;
④ 復制值類型變量時,復制的是變量的值,而不是變量的地址;
⑤ 值類型變量不能為NULL,必須具有一個確定的值
值類型是從System.ValueType類繼承而來的類型。
2、整數類型:整數類型代表沒有小數點的整數數值
類型 | 說明 | 范圍 |
Sbyte | 8位有符號整數 | 取值范圍在128~127之間 |
Short | 16位有符號整數 | 取值范圍在-32,768~32,767之間 |
Int | 32位有符號整數 | 取值范圍在-2,147,483,648~2,147,483,647之間 |
Long | 64位有符號整數 | 取值范圍在-9,223,372,036,854,775,808~9,223,372,036,854,775,807之間 |
Byte | 8位無符號整數 | 取值范圍在0~255之間 |
Ushort | 16位無符號整數 | 取值范圍在0~65,535之間 |
Uint | 32位無符號整數 | 取值范圍在0~4,294,967,295之間 |
Ulong | 64位無符號整數 | 取值范圍在0~18,446,744,073,709,551,615之間 |
創建一個控制臺應用程序,聲明變量int類型的變量ls并初始化為927,一個為byte類型的變量shj并初始化為255,輸出
1 statci void Main (string [] arge)2 {3 int ls=927;//聲明一個int類型的變量ls4 byte shj =255;//聲明一個byte類型的變量shj5 Console.WriteLine("ls={0},shj={1}"+ls,shj);//輸出6 Console.ReadLine();7 } 如果將byte類型的變量shj賦值266出現錯誤,byte值范圍0~255
3、浮點類型:浮點類型變量主要用于處理含有小數的數值數據,浮點型主要包含float和double。 它們的差別在于取值范圍和精度
類型 | 說明 | 范圍 |
float | 精確到7位數 | 取值范圍在1.5x10^-45~3.4x10^38之間 |
double | 精確到15~16位數 | 取值范圍在5.0x10^-324~1.7x10^308之間 |
如果不做任何設置,包含小數點的數值都被認為double類型,如果沒有指明的情況下,這個數值是double類型。如果要將數值一float類型來處理,就要強制轉換使用f或F將其指定為float類型
1 double MyDou=927d;//使用d強制轉換為double2 double mudou=112D;//使用D強制轉換為double
將數值數值類型強制指定為double類型,則需要使用D或d進行設置
1 double MyDou=927d;//使用d強制轉換為double2 double mudou=112D;//使用D強制轉換為double
<!--[if !supportLists]-->3、<!--[endif]-->布爾型:布爾類型主要用來表示true/false值,一個布爾類型的變量,其值只能是true或者false,不能將其他的值指定給布爾類型變量,布爾類型變量不能與其他類型進行轉換。
將927賦值給布爾類型變量x
1 Bool x=927;
這樣賦值是錯誤的,常量值927無法轉換為bool。
三、引用類型:
1、 引用類型是構建C#應用程序的主要對象類型數據,預先定義的對象類型以new創建對象實例,并存儲在堆棧中。 2、引用類型特征:
①、必須在托管堆中為引用類型變量分配內存;
②、必須需new關鍵字來創建引用類型變量;
③、在托管堆中分配的每個對象都有與之相關聯的附加成員,這些成員必須被初始化;
④、引用類型變量室友垃圾回收機制來管理的;
⑤ 多個引用變量可以引用同一對象,這種情況下,對一個變量的操作會影響另一個變量所引用的同一對象
⑥ 引用類型被賦值前的值都是NULL
所有被稱為“類”的都是引用類型,主要包括類、接口、數組和委托。
創建一個控制臺應用程序,在其中創建一個C類,在該類中建立一個字段Value,并初始化為0.然后通過其他位置通過new創建該類的引用類型變量,最后輸出。
1 class PRogram 2 { 3 class C //創建一個C類 4 { 5 public int Value = 0;//聲明一個公共int類型的變量Value 6 } 7 static void Main(string[] args) 8 { 9 int v1 = 0;//聲明一個int類型的變量v1,并初始化為010 int v2 = 1;//聲明一個int類型的變量v2,并將v1賦值個v211 v2 = 927;//重新將變量V2賦值為92712 C r1 = new C();//使用new關鍵字創建引用對象13 C r2 = r1;//使r1=r214 r2.Value = 112;//設置r2的value值15 Console.WriteLine("Values;{0},{1}", v1, v2);//設置輸出v1和v2的變量16 Console.WriteLine("refs;{0},{1}", r1.Value, r2.Value);//輸出引用類型對象的value值17 Console.ReadLine();18 }19 }
新聞熱點
疑難解答