1. 程式人生 > 其它 >C#-8 陣列

C#-8 陣列

一 關於陣列

陣列是由一個變數名稱表示的一組同類型的資料元素。陣列中的元素通過變數名和方括號索引來訪問。

int[] intArray = new int[] { 1, 2, 3 }; //聲明瞭一個名稱為intArray的陣列物件
// 1 2 3 為 intArray中的元素 ;
// intArray的維度為1 ;
// intArray的維度長度為3 ;
// intArray的長度為3 ;

陣列的獨立資料項稱作元素,陣列的所有元素型別必須是相同型別或繼承自相同型別。

陣列一旦建立,大小就固定了。C#不支援動態陣列。

陣列索引從0開始。


 

二 陣列型別

有兩種型別的陣列:

  • 一維陣列
  • 多維陣列

而多維陣列又分為:

  • 矩形陣列:某個維度的所有子陣列有相同長度
  • 交錯陣列:沒一個子陣列都是獨立陣列,有不同的長度

 

三 陣列是物件

陣列例項是從System.Array繼承的物件。陣列是引用型別。

陣列中的元素可以是值型別或引用型別。


 

四 例項化一維陣列和矩形陣列

int[] arr2 = new int[4];                                //一維值型別陣列
MyClass[] mcArr = new MyClass[4];                       //一維引用型別陣列
int[,,] arr3 = new int[3, 6, 2];                        //
三維陣列 int[] arr4 = new int[] { 1, 2, 3, 4 }; //顯示初始化 int[,] arr5 = new int[,] { { 1, 2, 3 }, { 4, 5, 6 } }; //顯示初始化 int[] arr6 = { 1, 2, 3, 4 }; //快捷語法 int[,] arr7 = { { 1, 2, 3 }, { 4, 5, 6 } }; //快捷語法 var arr8 = new[] { 1, 2, 3, 4, 6 }; //
隱式型別推斷 //訪問陣列元素 arr2[1] = 10; var i1 = arr2[2]; arr3[2, 4, 1] = 20; var i2 = arr3[2, 4, 1];

 

 當陣列被建立之後,每一個元素都自動初始為其型別的預設值。

整型的預設值是0,引用型別的預設值是null。