java - 为什么第二个代码在我尝试将元素插入二维数组时不起作用?
问题描述
二维数组的问题。
当我尝试在数组中插入元素时,此代码有效,但其他代码(在此下方)无效。
`int [][] array = { {1,2,3},
{4,5,6},
{7,8,9},
{0}
};
for(int i = 0; i < array.length; i++) {
for(int j = 0; j < array[i].length; j++) {
System.out.print(array[i][j]);
}
System.out.println();
}`
此代码不起作用。
`int [][] arr;
array[0][0] = 1;
array[0][1] = 10;
array[0][2] = 100;
array[1][1] = 99;
array[1][2] = 123;
array[1][0] = 177;
array[2][1] = 999;
array[2][2] = 453;
array[3][0] = 000;
array[3][1] = 1090;
array[3][2] = 1202;`
for(int x = 0; x < arr.length; x++) {
for(int y = 0; y < arr[x].length; y++) {
System.out.print(arr[x][y]);
}
System.out.println();
}
这是我得到的错误:
线程“main” java.lang.Error 中的异常:未解决的编译问题:局部变量 arr 可能尚未初始化 局部变量 arr 可能尚未初始化 局部变量 arr 可能尚未初始化
解决方案
两个问题。您命名了该数组arr
(不是array
),并且在声明时没有调整它的大小。喜欢,
int [][] array = new int[4][3];
array[0][0] = 1;
array[0][1] = 10;
array[0][2] = 100;
array[1][1] = 99;
array[1][2] = 123;
array[1][0] = 177;
array[2][1] = 999;
array[2][2] = 453;
array[3][0] = 000;
array[3][1] = 1090;
array[3][2] = 1202;
for(int x = 0; x < array.length; x++) {
for(int y = 0; y < array[x].length; y++) {
System.out.print(array[x][y]);
}
System.out.println();
}
推荐阅读
- sql - proc sql:一步计算基于不同条件的多个汇总统计信息
- ios - 在特定时间段后停止本地通知
- python - 如何提高CNN的预测准确率
- elixir - 如何同时插入 2 个对象但相差 1 秒?
- javascript - 为什么当在另一个对象中传播对象时,我在浏览器中得到的输出与在节点中不同?
- c# - .NET Core - 解决 IServiceProvider 依赖项
- reactjs - 意外的 redux 状态刷新
- c# - 如何在运行时重新加载数据网格视图c#
- c++ - 为什么`main`函数中的局部int变量会自动初始化?
- javascript - 仅使用 jquery required 验证器验证第一个字段