1).在C#中,數組是引用類型。C#的數組類型比較靈活,可以在聲明數組時不進行初始化,這樣以後就可以動態地 指定其大小。利用這種技術,可以創建一個空引用,以後再使用new關鍵字把這個引用指向請求動態分配的內存位置。
例如:int[] Integers;
Integers = new int[32];
同時,在c和C++中,數組的一個優點是可以在花括號中爲數據提供一組初始值的硬編碼列表。C#保留了這種方便的特性:
string[] String={"first element","second element","third element"};
在C#中,等價於:
string[] String=new string[] {"first element","second element","third element"};
在初始化數組時,有幾個應避免的問題。例如:
一、不能用變量設置數組應包含多少個元素
int len = 3;
string[] String = new string[len] {"first element","second element","third element"}; //錯誤
正確的聲明:const int len = 3;
二、如果希望數組的長度是動態變化的,或者數組在運行期間其長度會增加。就必須創建ArrayList對象的一個實例,該對象在System.Collections名稱空間上。
三、類也可以保存在數據中,具體可見(A 爲一個類)
static void Main(string[] args)
{
A[] ab;
ab = new A[3]; //只是分配空間
ab[1] = new A(); //實例化,即構造函數執行
Console.WriteLine(ab[1].a);
Console.ReadLine();
}
四、因爲數組本身也是類,如果數組的元素是預定義類型,則可以使用Sort方法把數組按升序排列。
Array.Sort(string) //string爲數組名
也可以使用System.Array.Sort方法和Icompare接口給數據排序。