C#基礎之數組編程
- 1. 數組的定義與初始化
一維數組:數組
(1) int [] A = new int[4]{ 0,1,2,3};編程語言
(2) int[] B = new int[4/變量];函數
(3) int[] C = { 1, 2, 3, 4 };spa
(4) int[] D; D = new int[4] { 1, 2, 3, 4 };排序
注意:內存
(1) int [] A 第一個[] 不能有行數限制,要在new裏設置。字符串
(2) new 表示的是建立數組並初始化。Int型爲0,bool型爲false,引用類型爲nullget
(3) 如上(4)不帶new的簡化定義,在初始化時必須帶new。如:int[] D; D ={ 1, 2, 3, 4 }; 是錯誤的。it
多維數組:這裏以二維數組爲例 [,] [, ,]
大多與一維數組相同,但注意要用{}表示一行,{}裏表示幾列(規模嵌套)
(1) int [,] n1 = new int [3,2] {{1,2},{3,4},{5,6}};
(2) int [,] n1 = new int [,] {{1,2},{3,4},{5,6}};
(3) int [,] n1 = {{1,2},{3,4},{5,6}};
- 2. 數組的屬性
(1) 數組的秩:即數組的維數。Int x=數組名.Rank;
(2) 數組的長度:即數組的元素個數 總長度:int a = 數組名.Length; 維數長度:int b =數組名.Length(維數序號); 維數序號從0開始
- 交錯數組:交錯數組至關於一維數組的每個元素仍是一個數組,這個數組的維數能夠多維的,且每個元素數組的規模能夠是不必定的,這就在多維數組是數組的數組的基礎上的約束。可是其維度是固定的。
一維:
(1) Int [] [] n1=new int [2][] //此處代表子數組是一維的
{
new int[] {1,3,5}, //第一個子數組的長度爲3
new int[] {2,4,6,8,10},//第二個子數組的長度能夠不一樣爲5
};//注意此處的;號 和裏面的new
(2) Int [] [] n2=new int [][] {new int[] {1,3,5}, new int[]{2,4,6,8,10} };
(3)Int [] [] n3= { new int[] {1,3,5}, new int[] {2,4,6,8,10} };
以上三種定義初始化方法等效
二維:
Int [] [,] n4 = new int [3] [,]
{
new int[,] {{1,2},{3,4}},
new int[,] {{1,2},{3,4},{5,6}},
new int[,] {{1,2},{3,4},{5,6},{7,8}},
};
//總結各類數組定義及初始化的格式:
數據類型 【】格式(不加數字)數組名 = new 數據類型 【】格式(加數組){ 初始化值(按行列分組初始化) }
- 4. 動態改變一維數組的大小
Array.ReSize(ref 要改變的數組名,調整後的大小);
//注意:這裏的大小是數組長度,而不是內存大小!
若大小大於原數組大小,大於原大小,則將原數組的元素複製到新數組,其後的元素爲自動默認值。若小於,則填滿爲止。若等於,則不進行操做。
- 5. 數組元素的排序與查找
排序:
(1) 升序: Array.Sort(數組名);
(2) 降序:Array.Reverse(數組名);
查找:Array.Indexof(數組名,所查的元素(注意要與數組的類型相同));
//字符串的查找Indexof(indexOfAny) 是用實例調用 數組的IndexOf是用類調用
- 6. 數組元素的統計:用數組的實例調用函數
- 求平均值:數組名.Average();
- 求和:數組名.Sum();
- 求最大值:數組名.Max();
- 求最小值:數組名.Min();
注意:(1)要在頭文件中加入 Using System.Linq;
// 語言集成查詢(英語:Language Integrated Query,縮寫:LINQ),發音"link",是微軟的一項技術,新增一種天然查詢的SQL語法到.NET Framework的編程語言中,當前可支持C#以及Visual Basic .NET語言
(2)只用int 型數組才能夠用這個函數