一维数组
一
static void Main(string[] args)
{
int[] arr1 = new int[5]; // 默认初始化为 0
for (int i = 0; i < arr1.Length; i++) {
arr1[i] = i;
}
foreach (int a in arr1) {
Console.WriteLine(a);
}
}
输出:
0
1
2
3
4
请按任意键继续. . .
int[]
这样一起可以看成是一个类型。
二
static void Main(string[] args)
{
int[] arr1 = new int[5] { 1, 2, 3, 4, 5 };
foreach (int a in arr1) {
Console.WriteLine(a);
}
}
输出:
1
2
3
4
5
请按任意键继续. . .
数组声明定义时,也可以写两行。
int[] arr1;
arr1 = new int[5] { 1, 2, 3, 4, 5 };
说明:
数组大小必须与大括号中的元素个数相匹配,否则会产生编辑错误。
三
不使用new
运算符,直接初始化。
static void Main(string[] args)
{
int[] arr1 = { 1, 2, 3, 4, 5 }; // 直接初始化。能自己推断出数组长度。
foreach (int a in arr1) {
Console.WriteLine(a);
}
}
二维数组
类似一维数组。
// 声明一个二行二列的数组
int[,] arr=new int[2,2];
// 使用 new 运算符对其进行初始化
int[,]arr=new int[2,2]{ { 1, 2 }, { 3, 4 } };
// 不指定行数和列数,用new运算符直接初始化
int[,]arr=new int[,]{ { 1, 2 }, { 3, 4 } };
// 不使用 new 直接初始化
int[,] arr = { { 1, 2 }, { 3, 4 } };
上面如果不指定维度,要用{}
分组;上面的如果写成{ 1, 2 , 3, 4 };
会报错。C# 二维(多维)数组内需要用{}
进行分组,不然语法错误。
二维数组下标访问的形式是:
arr[i, j]; // 下标访问形式
不能在声明中指定大小,下面这种方式是错误的:
int[2, 3] arr = new int[2, 3] { { 1, 2, 5 }, { 3, 4, 6 } };
// ▲ int[2, 3] arr = …… 这样是错误的。