標籤:c#
資料類型:
C#中的變數類型根據其定義可以分為兩種:一種是實值型別,一種是參考型別。這兩種類型的差別在於資料的儲存方式。實值型別的變數本身直接儲存資料。而參考型別則儲存實際資料的引用,程式通過此引用找到真正的資料。
實值型別變數直接儲存其資料值,主要包含整數類型、浮點類型以及布爾類型。實值型別變數在棧中進行分配,因此效率很高,使用實值型別主要目的是為了提高效能。實值型別有如下特性:
1、實值型別都儲存在棧中。
2、訪問實值型別變數時,一般都是直接存取其執行個體。
3、每個實值型別變數都有自己的資料副本,因此對一個實值型別變數的操作不會影響其他變數。
4、複製實值型別變數時,複製的是變數的值,而不是變數的地址。
5、實值型別變數不能為null,必須具有一個確定的值。
實值型別是從System.ValueType類繼承而來的類型。
整數類型:
整數類型用來儲存整數數值,即沒有小數部分的數值。可以是正數,也可以是負數。整數型資料在C#中有3種表示形式:分別為:十進位、八進位、十六進位。
其中八進位必須以0開頭。比如:0123.
十六進位必須以0x或0X開頭。
在C#中內建的資料類型為:sbyte、short、int、long 、byte、ushort 、uint、ulong。
浮點類型變數主要用於處理含有小數的數值資料,浮點類型主要包含float、double兩種數實值型別。
如果不做任何設定,包含小數點的數值都被認為是double類型。如果要將數值以float類型來處理,就應該通過強制使用F或f將其指定為float類型。
如果要將數值強制指定為double類型,則應該使用D或d進行設定。
布爾類型主要用來表示true或false值。一個布爾類型的變數,其值只能是true或false。不能將其它的值指定給布爾類型變數。布爾類型變數不能與其它類型之間進行轉換。布爾類型通常被用在流程式控制制中作為判斷條件。
參考型別:
參考型別是構建C#應用程式的主要物件類型資料。在應用程式執行過程中,預先定義的物件類型以new建立物件類型,並且儲存在堆中。堆是一種由系統彈性配置的記憶體空間,沒有特定大小及存活時間,因此可以備彈性地運用於對象的訪問。參考型別就類似於生活中的代理商,代理商沒有自己的產品,而是代理廠家的產品,使其就好像是自己的產品一樣。
參考型別具有如下特徵:
1、必須在託管堆中為參考型別變數分配記憶體。
2、使用new關鍵字來建立參考型別變數。
3、在託管堆中分配的每個對象都有與之相關聯的附加成員,這些成員必須被初始化。
4、參考型別變數是由記憶體回收機制管理的。
5、多個參考型別變數可以引用同一個對象,這種情形下,對一個變數的操作會影響另一個變數所引用的同一個對象。
6、參考型別被賦值前的值都是null。
7、所有被稱為“類”的都是參考型別。主要包括:類、介面、數組和委託。
比如:建立一個控制台應用程式,在其中建立一個類C,在此類中建立一個欄位Value,並初始化為0。然後,在程式的其它位置通過new建立對此類的參考型別變數。代碼如下:
class Program
{
class C
{
public int Value=0;
}
public static void Main(string[] args)
{
C c1=new C();
c1.Value=100;
}
}
本文出自 “奕奕微笑” 部落格,請務必保留此出處http://yiyiweixiao.blog.51cto.com/2476874/1976416
38、我的C#學習筆記4