来自文件的Java多重阵列
问题描述:
我一直有问题试图让程序工作。数组中的第一行设置为空白,并保持推出数组中的最后一行。来自文件的Java多重阵列
Scanner console = new Scanner(System.in);
System.out.println("please enter the file name");
String name = console.next();
Scanner input = new Scanner(new File(name));
int length = input.nextInt();
int lengt = input.nextInt();
char[][] array = new char[length][lengt];
for(int i = 0; i < length; i++) {
array[i] = input.nextLine().toCharArray();
}
for(int k = 0; k < array.length; k++){
for(int s = 0; s < array[k].length; s++) {
System.out.print(array[k][s]);
}
System.out.println();
}
input.close();
System.out.println();
答
尝试加入一行input.nextLine();
到您的代码如下所示:
int length = input.nextInt();
int lengt = input.nextInt();
input.nextLine();
char[][] array = new char[length][lengt];
我认为正在发生的事情是,你正在阅读的int
的获得length
和lengt
,但你离开该行的其余部分。当您第一次拨打array[i] = input.nextLine().toCharArray();
时,您正在推动其余行或length
和lengt
int
的行。由于这是您的for
循环中的第一行,因此您不会遍历最后一行。
+0
谢谢它的工作 – ghost2092000
+0
伟大的,这里是如何可以标记为接受的答案:http://meta.stackexchange.com/questions/5234/how-does-接受-的回答工作 – SeanKelleyx
你能包括你的文件的前几行 – SeanKelleyx