C#有幾種資料型別?他們的作用?
廣義上說,C#(及所有.NET語言)只分為值型別和引用型別,值型別就是定義好以後,預設為各型別的初始值(如int為0)對它的每次引用賦值都會新建一個副本。而引用型別定義好以後,預設為null,要初始化後才能用,並且對它的引用賦值不會新建副本。
比較下面:
int a=0; int b=a; b=5;
這種情況,a不會變成5,因為int是值型別。
Hashtable a, b;a[0]=0; b=a; b[0]=4;
這種情況下a[0]會變成4,因為Hashtable是引用型別。
一、值型別(基本值型別,結構值型別,列舉值型別)
包括簡單值型別和複合型型別。
簡單值型別可以再細分為整數型別、字元型別、實數型別和布林型別;
而複合型別則是簡單型別的複合,包括結構(struct)型別和列舉(enum)型別。
二、引用型別(類型別,陣列型別,介面型別,委託型別)
包括類(class)、介面(interface)、委託(delegate)和陣列(array)。
類(class)是一組具有相同資料結構和相同操作的物件集合。
介面(interface)應用程式之間要相互呼叫,就必須事先達成一個協議,被呼叫的一方在協議中對自己所能提供的服務進行描述。在C#中,這個協議就是介面。
委託(delegate)用於封裝某個方法的呼叫過程。
陣列(array)主要用於同一資料型別的資料進行批量處理。
相關文章
- 駭客型別有哪些?他們有什麼區別?型別
- 資料中心代理有哪幾種型別?型別
- 面試官:Redis有幾種資料型別,詳細說一下每種資料型別的使用場景面試Redis資料型別
- JS資料型別判斷的幾種方法JS資料型別
- [Redis] 淺談Redis內的幾種資料型別Redis資料型別
- 判斷js中的資料型別的幾種方法JS資料型別
- 資料型別: 資料型別有哪些?資料型別
- 代理伺服器有幾種型別呢?伺服器型別
- 美國伺服器有哪幾種型別?伺服器型別
- css選擇器有哪幾種型別CSS型別
- redis的幾種型別解析Redis型別
- SQL資料型別和C#資料型別間的轉換SQL資料型別C#
- 51. ajax幾種請求方式?他們的優缺點?
- 面試官問:ZooKeeper 有幾種節點型別?別再說 4 種啦!面試型別
- 不同型別的資料有什麼作用型別
- 瞭解下C# 資料型別C#資料型別
- c#資料型別學習C#資料型別
- C#基礎資料型別C#資料型別
- 13種資料型別 - forbes資料型別ORB
- 建立一種新的資料型別資料型別
- 資料更改事件的三種型別事件型別
- CWE-352: CSRF漏洞有幾種常見型別?型別
- 為什麼抓包檔案有好幾種型別?型別
- 智慧駕駛中常見的幾種資料標註型別 | 景聯文科技型別
- javascript資料型別和作用域介紹JavaScript資料型別
- JavaScript有哪些資料型別?JavaScript資料型別
- 大資料分析的型別有哪些大資料型別
- Redis有哪幾種資料淘汰策略?Redis
- JSON資料交換格式有幾種?JSON
- 【Redis】Redis的資料型別速查(5種基礎型別,5特殊型別)Redis資料型別
- 介面之多種返回資料型別資料型別
- Redis 三種特殊資料型別Redis資料型別
- JS 裡的資料型別及幾個操作JS資料型別
- javascript 判斷各種資料的型別JavaScript型別
- Redis 中三種特殊的資料型別Redis資料型別
- SQL Server 中的25種資料型別SQLServer資料型別
- .net內常用的幾種檔案型別型別
- C# 泛型中的資料型別判定與轉換C#泛型資料型別