!初始化二维数组 由键盘输入
求助!初始化二维数组 由键盘输入
我的代码如下:
但现在有个问题是:数组是3*5的二维数组 我由命令行输入1 2 3 4 5 。。。。15 但是为什么结果如下:
1 2 3 4 5 4 5 6 7 8 7 8 9 10 11
为什么缺了12--15?
请各位大神指教!
------解决方案--------------------
public static void main(String[] args) {
// TODO Auto-generated method stub
int[][] numTable = new int[3][5];
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 5; j++) {
numTable[i][j] = Integer
.parseInt(args[i * numTable[0].length + j]);
}
}
for (int m = 0; m < numTable.length; m++) {
for (int n = 0; n < numTable[m].length; n++) {
System.out.print(numTable[m][n] + " ");
}
}
}
代码问题 你的i*numTable.length+j这地方是相当于i*3+j其实你要的是数组的列长度而你写成了行长度
------解决方案--------------------
差不多,同一楼的
我的代码如下:
public class BasicStatistics {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int[][] numTable = new int[3][5];
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 5; j++) {
numTable[i][j] = Integer.parseInt(args[i*numTable.length+j]);
}
}
for (int m = 0; m < numTable.length; m++) {
for (int n = 0; n < numTable[m].length; n++) {
System.out.print(numTable[m][n]+" ");
}
}
}
}
但现在有个问题是:数组是3*5的二维数组 我由命令行输入1 2 3 4 5 。。。。15 但是为什么结果如下:
1 2 3 4 5 4 5 6 7 8 7 8 9 10 11
为什么缺了12--15?
请各位大神指教!
Java
二维数组
------解决方案--------------------
public static void main(String[] args) {
// TODO Auto-generated method stub
int[][] numTable = new int[3][5];
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 5; j++) {
numTable[i][j] = Integer
.parseInt(args[i * numTable[0].length + j]);
}
}
for (int m = 0; m < numTable.length; m++) {
for (int n = 0; n < numTable[m].length; n++) {
System.out.print(numTable[m][n] + " ");
}
}
}
代码问题 你的i*numTable.length+j这地方是相当于i*3+j其实你要的是数组的列长度而你写成了行长度
------解决方案--------------------
差不多,同一楼的
public static void main(String[] args) {
// TODO Auto-generated method stub
int[][] numTable = new int[3][5];
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 5; j++) {
int k=i*numTable[0].length + j;
System.out.println(k);
numTable[i][j] = Integer
.parseInt(args[k]);
}
}
for (int m = 0; m < numTable.length; m++) {
for (int n = 0; n < numTable[m].length; n++) {
System.out.print(numTable[m][n] + " ");
}
}
}