如何从扫描仪接收用户的输入,然后将该输入放入2D阵列。这就是我所拥有的,但我不认为这是对的:
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
int [][] a = new int[row][col];
Scanner in = new Scanner(System.in);
System.out.println("Enter a sequence of integers: ");
while (in.hasNextInt())
{
int a[][] = in.nextInt();
a [row][col] = temp;
temp = scan.nextInt();
}
Square.check(temp);
}
我要做的是创建一个2D数组并创建一个魔术广场。我有布尔部分想通了,我只需要帮助将数字序列输入到数组中,这样布尔方法就可以测试数字。所有人都非常感谢
答案 0 :(得分:2)
我不相信你的代码会按照你想要的方式运行。如果我正确理解您的问题,请按以下步骤操作:
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int [][] a = new int[row][col];
for(int i = 0; i < row; i++) {
for(int j = 0; j < col; j++) {
System.out.print("Enter integer for row " + i + " col " + j + ": ");
a[i][j] = in.nextInt();
}
}
// Create your square here with the array
}
在循环中,i
是当前行号,j
是当前列号。它将询问用户每个行/列的组合。
答案 1 :(得分:0)
您可以使用它来同时输入所有号码:
int [][] a = new int[3][3];
Scanner in = new Scanner(System.in);
System.out.println("Enter a sequence of integers: ");
int row=0,col=0;
while (in.hasNextInt())
{
a [row][col++] = in.nextInt();
if(col>=3){
col=0;
row++;
}
if(row>=3)break;
}
然后你可以输入:
1 2 3 4 5 6 7 8 9
填充你的阵列。