C#数组详解
什么是数组
数组是 C# 中最常用的一种数据结构,它可以用于存储同一种数据类型的多个元素。数组中的元素可以通过数组下标进行访问,下标从 0 开始计数。
数组定义和初始化
下面是定义和初始化一个数组的语法:
数据类型[] 数组名 = new 数据类型[数组长度];
其中,数组类型可以为整型、字符型、浮点型、对象型(即自定义类)等。数组长度为整型数据,用于指定数组中可以容纳的元素个数。
以下是一些数组的初始化示例:
int[] array1 = new int[10]; // 创建一个包含 10 个整数的数组
char[] array2 = new char[20];// 创建一个包含 20 个字符的数组
double[] array3 = new double[5];// 创建一个包含 5 个双精度浮点数的数组
string[] array4 = new string[3] { "hello", "world", "!" };// 创建一个包含 3 个字符串的数组,数组中初始化的元素为 "hello"、"world" 和 "!"
数组访问
数组访问通常使用下标操作符 [],即可访问数组中的元素:
数据类型[] 数组名 = new 数据类型[数组长度];
数组名[下标] = 值;//设置某个下标上的值
数据类型 变量名 = 数组名[下标];//获取某个下标上的值
下标从数组的开头开始,从 0 开始计数。下标最大值为数组长度减一。例如在一个长度为 5 的数组中,下标的有效值为 0、1、2、3、4。
以下是一个简单的例子,展示如何访问数组中的元素:
int[] array = new int[5] { 10, 20, 30, 40, 50 };
for (int i = 0; i < array.Length; i++) {
Console.WriteLine("array[{0}] = {1}", i, array[i]);
}
输出:
array[0] = 10
array[1] = 20
array[2] = 30
array[3] = 40
array[4] = 50
多维数组
多维数组,如二维数组,可以使用下面的语法定义和初始化:
数据类型[,] 数组名 = new 数据类型[行数, 列数];
以下是一个二维数组的示例,展示了如何定义、初始化和访问它:
int[,] arr = new int[3, 4] {
{0, 1, 2, 3}, /* 初始化索引号为 0 的行 */
{4, 5, 6, 7}, /* 初始化索引号为 1 的行 */
{8, 9, 10, 11} /* 初始化索引号为 2 的行 */
};
//输出二维数组的元素
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 4; j++) {
Console.WriteLine("arr[{0},{1}] = {2}", i, j, arr[i, j]);
}
}
输出:
arr[0,0] = 0
arr[0,1] = 1
arr[0,2] = 2
arr[0,3] = 3
arr[1,0] = 4
arr[1,1] = 5
arr[1,2] = 6
arr[1,3] = 7
arr[2,0] = 8
arr[2,1] = 9
arr[2,2] = 10
arr[2,3] = 11
数组的属性和方法
以下是一些常用的数组属性和方法:
Length 属性
获取数组中的元素个数。
int[] array = new int[5] { 10, 20, 30, 40, 50 };
Console.WriteLine(array.Length); // 输出 5
Rank 属性
获取数组的维数。
int[,] arr = newint[3, 4];
Console.WriteLine(arr.Rank); // 输出 2
GetLength 方法
获取数组中某个维度的长度。
int[,] arr = new int[3, 4];
Console.WriteLine(arr.GetLength(0)); // 输出 3,表示第一维度的长度
Console.WriteLine(arr.GetLength(1)); // 输出 4,表示第二维度的长度
Clone 方法
用于创建一个与原始数组相同的浅表副本。
int[] array1 = new int[] { 1, 2, 3, 4, 5 };
int[] array2 = (int[])array1.Clone();
Copy 方法
用于将一个数组中的元素复制到另一个数组中。
int[] array1 = new int[] { 1, 2, 3, 4, 5 };
int[] array2 = new int[5];
array1.CopyTo(array2, 0);//从第二个数组的 0 号下标开始拷贝
总结
本文介绍了 C# 数组的定义、初始化、访问、多维数组和一些常用的数组属性和方法。数组是一个非常方便的数据结构,可以存储大量的数据,应该在编写 C# 程序中经常使用。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:c#数组详解 - Python技术站