一、數組的概念和基本語法
數組是一種數據結構,用來存儲同一類型的一組數據。C#中,聲明數組時可以指定其長度,也可以直接初始化數據。基本語法如下:
// 聲明數組 int[] intArray; // 初始化數組 int[] intArray1 = new int[5]; // 通過指定長度初始化 int[] intArray2 = new int[] { 1, 2, 3, 4, 5 }; // 直接初始化數據 int[] intArray3 = { 1, 2, 3, 4, 5 }; // 省略 new int[],直接初始化數據
上面代碼中,intArray1 是一個長度為 5 的 int 數組,其元素默認初始化為 0;intArray2 和 intArray3 分別通過指定初始化和直接初始化方式初始化了一個相同的 int 數組。
二、多維數組
在 C# 中,可以聲明多維數組來存儲更加複雜的數據。
// 聲明二維數組 int[,] int2DArray; // 初始化二維數組 int[,] int2DArray1 = new int[3, 4]; int[,] int2DArray2 = new int[,] { { 1, 2, 3 }, { 4, 5, 6 } }; int[,] int2DArray3 = { { 1, 2, 3 }, { 4, 5, 6 } };
上面代碼中,int2DArray1 是一個 3 行 4 列的二維 int 數組,其元素默認初始化為 0;int2DArray2 和 int2DArray3 分別通過指定初始化和直接初始化方式初始化了一個相同的二維 int 數組。
三、數組的遍歷
在 C# 中,可以使用 for 循環或 foreach 循環遍曆數組。
// for 循環遍曆數組 for (int i = 0; i < intArray.Length; i++) { Console.WriteLine(intArray[i]); } // foreach 循環遍曆數組 foreach (int i in intArray) { Console.WriteLine(i); }
上面代碼中,兩種循環遍歷方式都可以遍歷 intArray 數組中的元素。
四、數組的排序
在 C# 中,可以使用 Sort() 方法對數組進行排序。排序方式包括升序和降序。
// 升序排序 Array.Sort(intArray); // 降序排序 Array.Sort(intArray); Array.Reverse(intArray);
上面代碼中,Array.Sort() 方法會將 intArray 數組進行升序排序;而在進行降序排序時,先調用 Array.Sort() 排序方法,然後再通過 Array.Reverse() 方法將排序後的數組進行逆序。
五、數組的複製和截取
在 C# 中,可以使用 Copy() 方法複製數組。同時,可以使用 CopyTo() 方法將數組複製到其他數組中,或者使用 Array.Copy() 方法進行複製。
// 複製數組 int[] intArrayCopy = (int[])intArray.Clone(); // 將數組複製到其他數組中 int[] intArrayCopyTo = new int[intArray.Length]; intArray.CopyTo(intArrayCopyTo, 0); // 使用 Array.Copy() 進行複製 int[] intArrayCopy2 = new int[intArray.Length]; Array.Copy(intArray, intArrayCopy2, intArray.Length);
上面代碼中,使用 Clone() 方法複製了 intArray 數組,生成了一個新數組 intArrayCopy。同時,還可以將 intArray 數組複製到 intArrayCopyTo 和 intArrayCopy2 兩個數組中。
此外,C# 還支持使用 SubArray() 方法對數組進行截取,也可以使用 Array.Copy() 將數組的一部分複製到新的數組中。
// 截取數組 int[] intArraySub = intArray.Skip(2).Take(3).ToArray(); // 將數組的一部分複製到新的數組中 int[] intArrayCopyPart = new int[3]; Array.Copy(intArray, 2, intArrayCopyPart, 0, 3);
六、總結
本文主要從數組的概念和基本語法、多維數組、數組的遍歷、排序、複製和截取等多個方面對 C# 初始化數組進行了詳細的闡述。相信通過本文的介紹,讀者對 C# 數組的使用會更加熟練和自如。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/205865.html