數組的概念和聲明、初始化
數組是一個存儲相同類型元素的固定大小的有順序的集合。數組是用來存儲數據的集合,通常認爲數組是一個同一類型變量的集合。
數組也是一種數據類型,數組是引用類型
1.1數組的類型
- 一維數組
- 二維數組
- 多維數組
- 交錯數組
1.2簡單數組
1.2.1數組的聲明
數據類型 [] 數組名稱;
通過數組的聲明,明確這個數組中可以裝載的數據類型有哪些
數據類型可以指定任何所需數據
string[] nameList;
[]:指定數組的秩(維度)。秩指定數組的大小
1.2.2數組的初始化
C#中對於任何變量都要確保其先初始化
聲明一個數組不會在內存中初始化數組。當初始化數組變量時,您可以賦值給數組
- 只進行初始長度初始化
nameList = new string[5];
這樣的初始化確保了數組對象的大小,數組的長度是5,這個數組中可以存放5個string類型的數據 - 長度初始化及元素初始化
nameList = new string[5] { “張三”,“張超”,“張博浩”,“張聖坤”,“王麻子”};
這樣初始化,既確定了數組的長度,同時也初始化了數組中的每一個元素
注意:在初始化元素對象務必確保元素個數和數組長度保持一致 - 只進行元素初始化
string[] nameList= { “張三”,“張超”,“張博浩”,“張聖坤”,“王麻子”};
這樣初始化,直接將元素存放進數組中,數組的長度有初始化時元素的個數決定,而且在使用這種初始化方式時,必須保證在數組聲明時才能使用
1.2.3數組元素的使用
數組聲明之後,基本上元素個數確定之後,每個元素如果沒有初始化元素則都按照元素數據類型對應的默認值確認。
- 改變數組中的元素
使用索引值進行對指定元素更改
而在C#中所有的索引全部是從0開始 - 調用數組中的元素
使用索引確保元素的順序
1.3二維數組
二維數組又稱爲矩形數組
1.3.1二維數組的聲明
聲明一個 string變量的二維數組,如下
string[,] names;
1.3.2二維數組初始化
names = new string[3, 4];
賦值初始化
names = new string[3, 4] { { "","","",""},{ "","","",""},{ "","","",""} };
二維數組中如果只進行初始化元素,而不進行初始化數組則務必保證每個每個行中的列的個數是一致的,數組的列數由第一行的列數決定
1.3.3二維數組的使用
使用行和列的索引共同使用
MessageBox.Show(names[2,2]);
1.4使用數組注意
索引不能超出最大界限
1.5多維數組
聲明一個 int 變量的三維數組,如下
int[,,] list = new int[2,3,3];
1.6交錯數組
交錯數組是數組的數組
聲明一個帶有 int 值的交錯數組 scores,如下所示
int[][] scores;
聲明一個數組不會在內存中創建數組。創建上面的數組:
int[][] scores=new int[5][];
後面的[]中不能再指定長度
您可以初始化一個交錯數組,如下所示:
lists = new string[3][] {new string[] { "1","2"},new string[]{ "3"},new string[]{ "3","2","1"} };
數組的使用
2.1數組解析
2.2冒泡排序
N個數字來排隊,兩兩相比小靠前。外層循環N-1,內層循環N-1-i
for (int i=0;i<list.Length-1 ;i++ )
{
for (int j = 0; j < list.Length-i-1; j++)
{
if (list[j]<list[j+1])
{
int temp = list[j];
list[j] = list[j + 1];
list[j + 1] = temp;
}
}
}