詳解兩類C#基本數據類型
C#基本數據類型中的值類型是直接存儲它的數據內容,而引用類型存儲的是對象的引用,這兩種類型對變量的賦值有著不同的含義。
值類型包括:簡單類型、結構類型、枚舉類型;引用類型包括:Object 類型、類類型、接口、代表元、字符串類型、數組。
C#基本數據類型-值類型示例
int m = 0;int n = m;m = 1; //此時 n 仍然是 0,因為 m 和 n 的數據存儲在不同的區域引用類型示例
class CFoo{ public int n;}
void Main(){ CFoo f1 = new CFoo(); f1.n = 0; CFoo f2 = f1; f1.n = 1; //此時 f2.n 變成了 1,因為 f2 與 f1 的內容是同一地址}值類型
值類型有:byte(1)、sbyte(1)、short(2)、ushort(2)、int(4)、uint(4)、long(8)、ulong(8)、float(4)、double(8)、decimal(8)、char、bool、枚舉、結構。
上述中括號中的數字表示字節數,byte、ushort、uint、ulong 為無符號類型(沒有負數),順便說一下 sbyte 是有符號的字節。
這些類型是.NET Framework 類型的別名的別名,具體對應關系,請參見由 String 與 string 引出的。
C#基本數據類型-引用類型
引用類型有:對象類型、類類型、接口、代表元、字符串類型、數組。
雖然字符串類型(string)是引用類型,但微軟為了我們設計方便,重載了其中的一些操作符,使得它應用起來就像是值類型一樣。
本文來自心之鎮的博客園文章《C#基本數據類型》
【編輯推薦】