值類型數組
數據類型,字符類型,布爾類型,日期類型函數
結構類型(struct),枚舉類型(enum)this
引用類型blog
字符串(string),數組,類,委託類型字符串
說明:
(1)值類型數據-一般在棧(stack)中分配,變量中存放的是實際數據值。
(2)引用類型的實際數據被分配在堆(managed heap)中,而引用變量被分配在棧中;引用類型變量存放的是堆中實例數據的存儲地址(即引用)。string
C#數據類型it
枚舉類型是具備命名常量的獨特的類型。
枚舉的聲明以下:
訪問修飾符enum枚舉名[:基礎類型]
{
枚舉成員
}基礎
其中:基礎類型爲8種整數類型之一,默認爲int。每一個枚舉成員爲一個命名常數,具備一個整數值。第一個枚舉成員默認值爲零,之後的成員值是將前一個枚舉成員的值加1 獲得。變量
枚舉例子:構造函數
public enum TimeofDay
{
Morning=1 ,
Afternoon ,
Evening //結束沒有逗號,
}
Morning的值爲1,使用-TimeofDay. Morning
Afternoon的值爲2,使用-TimeofDay. Afternoon
Evening的值爲3,使用-TimeofDay. Evening
C#的數據類型-結構
C#中的結構類型與類類似,能夠定義包含數據成員和方法成員的結構。但與類不一樣的是,結構是一種值類型,並不須要堆的分配。
•
在結構的聲明中,不能對實例字段變量初始化。(const,static字段除外)。
•
結構中能夠聲明帶參數的構造函數(爲結構中數據成員初始化),經過new建立結構的實例。
01:struct A
02:{
03: public int x; //不能直接對其進行賦值
04: public int y;
05: public static string str = null; //靜態變量能夠初始化
06: public A(int x,inty) //帶參數的構造函數
07: {
08: this.x= x;
09: this.y= y;
10: Console.WriteLine("x={0},y={1},str={2}", x, y,str);
11: }
12:}
當方法中的參數名與類中字段名同名時如:
03與06行,這時方法中this.x將引用實例中的字段名。
常量
符號常量-使用const修飾符進行聲明。
符號常量必須在聲明時初始化。
例如:
public constintmonths=12;
聲明多個相同類型的常量,例如:
constintmonths = 12, weeks = 52, days = 365;
字面常量:
•
int型常數(不帶小數)如:25
•
double型常數如:3.14 , 314e-2
隱式類型-var
C# 的局部變量能夠使用隱式類型var聲明。格式爲:
var 變量名=初值表達式;
變量的實際類型由初值表達式推斷。
如:vari = 10; // 隱式聲明變量,i可推斷爲int
var s=「abcd」; //隱式聲明變量,s推斷爲string
注意:
var聲明的變量必須是局部變量。
必須在聲明時初始化
例:輸出A數組各元素值for( var i=0;i<6;i++)Console.Write(A[i] + " ");