所以我希望我的输出是这样的:
N = 3
userinput1 | userinput2 | userinput3
userinput4 | userinput5 | userinput6
userinput7 | userinput8 | userinput9
但问题是在我插入我的userinput1并按下输入后,它会在下面的一个空格中变成这样的
1
| 2
| 3
|
4
| 5
| 6
|
7
| 8
| 9
|
我试图改变sc.nextInt();到sc.nextLine();但即使我使用了parseInt它也无法工作..
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
int[][] noOfArrays;
int noOfRows;
int noOfColumns;
System.out.println("Output : ");
System.out.print("Input N = ");
noOfRows = sc.nextInt();
noOfColumns = noOfRows;
noOfArrays = new int[noOfRows][noOfColumns];
///////////////////////////////
for(int i = 0; i<noOfRows; i++)
{
for(int j=0; j<noOfColumns; j++)
{
noOfArrays[i][j] = sc.nextInt();
System.out.print(" | ");
}
System.out.println("");
}
}
答案 0 :(得分:0)
使用基本Java编程无法在控制台上检测用户键输入。如果您需要该功能,则可能需要使用javacurses或JNI等库。
处理此问题的两种方法是:
[i, j]
|
分隔的输入,然后读取整行,将值拆分为数组并形成行。