访问二维数组元素
本课属于 Coddy C# 学习旅程的“逻辑与流程”单元。第 3 课,共 66 课。
访问二维数组中的元素,语法与普通数组类似,但需要两个索引:一个用于行,一个用于列。
注意:在 C# 中,多维数组有两种:矩形数组(int[,])和交错数组(int[][])。本课介绍交错数组,其中每一行都是一个独立的数组。
创建一个包含 3 行、4 列的交错数组:
int[][] grid = new int[3][];
grid[0] = new int[4];
grid[1] = new int[4];
grid[2] = new int[4];给特定位置(行索引 1,列索引 2)赋一个值:
grid[1][2] = 42;从指定位置读取一个值(行索引 0,列索引 3):
int value = grid[0][3];由于索引从 0 开始,行索引 0 是第 1 行,列索引 3 是第 4 列。
请记住,数组索引从 0 开始,因此有效的索引范围是:
- 行:索引从 0 到 2(对于有 3 行的数组:第 1 行的索引是 0,第 2 行是 1,第 3 行是 2)
- 列:索引从 0 到 3(对于有 4 列的数组:第 1 列的索引是 0,第 2 列是 1,依此类推)
grid[3][2]),就会收到 IndexOutOfRangeException。挑战
中等编写一个名为 getElement 的方法,它接受三个参数:
- 一个二维整数数组(
int[][] matrix) - 一个行索引(
int row) - 一个列索引(
int col)
如果索引有效,该方法应返回指定位置的元素。如果任一索引超出范围,该方法应返回 -1。
亲手试试
public class GetElement
{
public static int getElement(int[][] array, int row, int col)
{
// 在这里编写你的代码
}
}这节课包含一个小测验。开始学习即可作答,并记录你的进度。
逻辑与流程中的所有课
自己练习: C# 在线编译器