AP 考试中心 · AP 计算机科学 A · 单元 8:二维数组

AP 计算机科学 A - 单元 8:二维数组

闪卡复习 · 预生成学习资源,所有用户共享

二维数组 (2D Array)
点击看答案
按行和列组织的元素集合,可以看作是“数组的数组”。
如何声明一个整数二维数组?
点击看答案
int[][] arrayName;
如何实例化一个 3 行 5 列的整数二维数组?
点击看答案
int[][] arrayName = new int[3][5];
如何使用初始化列表创建二维数组?
点击看答案
int[][] nums = {{1, 2, 3}, {4, 5, 6}};
如何访问第 `r` 行、第 `c` 列的元素?
点击看答案
arrayName[r][c] (行和列的索引都从 0 开始)
数组的行数。
点击看答案
对于二维数组 `arr`,`arr.length` 返回什么?
第一行 (索引为0的行) 的列数或元素个数。
点击看答案
对于二维数组 `arr`,`arr[0].length` 返回什么?
遍历二维数组最常用的方法是什么?
点击看答案
使用嵌套的 for 循环,外循环遍历行,内循环遍历列。
什么是行主序遍历 (Row-Major Traversal)?
点击看答案
逐行处理数组元素,先完成第一行的所有列,再到下一行。
什么是列主序遍历 (Column-Major Traversal)?
点击看答案
逐列处理数组元素。外循环遍历列索引,内循环遍历行索引。
编写一个标准的行主序遍历 `arr` 的代码框架。
点击看答案
for (int r=0; r<arr.length; r++) { for (int c=0; c<arr[r].length; c++) { ... arr[r][c] ... } }
如何使用增强型 for 循环遍历二维数组?
点击看答案
for (int[] row : arr) { for (int val : row) { ... val ... } }
增强型 for 循环以什么顺序处理元素?
点击看答案
总是行主序 (Row-Major)。
什么是锯齿数组 (Ragged Array)?
点击看答案
一种特殊的二维数组,其中每一行的长度(列数)可以不同。
访问数组边界之外的元素会发生什么?
点击看答案
抛出 `ArrayIndexOutOfBoundsException` 异常。
如何将二维数组 `grid` 作为参数传递给方法?
点击看答案
public void myMethod(String[][] grid) { // 方法体 }