Java 将文本文件中的矩阵存储到二维数组中
我无法将文本文件中的矩阵存储到2D数组中。每次我运行以下代码时,它都会执行,没有错误,但控制台中没有打印任何内容。任何帮助都将不胜感激。我的代码如下所示:Java 将文本文件中的矩阵存储到二维数组中,java,arrays,multidimensional-array,Java,Arrays,Multidimensional Array,我无法将文本文件中的矩阵存储到2D数组中。每次我运行以下代码时,它都会执行,没有错误,但控制台中没有打印任何内容。任何帮助都将不胜感激。我的代码如下所示: public static void main(String[] args) throws FileNotFoundException { Scanner sc = new Scanner(new File("input1.txt")); String [][] array = new String [9]
public static void main(String[] args) throws FileNotFoundException {
Scanner sc = new Scanner(new File("input1.txt"));
String [][] array = new String [9][9];
try{
for(int i = 0; i > array.length; i++) {
for(int j = 0; j < array[0].length; j++) {
array[i][j] = sc.next();
System.out.print(array[i][j] + " ");
}
}
}catch(Exception e){
System.out.print("error");
}
问题在于第一个循环,当
“input1.txt”
的内容为int
时,最好使用nextInt()
public static void main(String[] args) throws FileNotFoundException {
Scanner sc = new Scanner(new File("input1.txt"));
int [][] array = new int [9][9];
try{
for(int i = 0; i < array.length; i++) {
for(int j = 0; j < array[0].length; j++) {
array[i][j] = sc.nextInt();
System.out.print(array[i][j] + " ");
}
}
}catch(Exception e){
System.out.print("error");
}
publicstaticvoidmain(字符串[]args)抛出FileNotFoundException{
Scanner sc=新扫描仪(新文件(“input1.txt”);
int[][]数组=新的int[9][9];
试一试{
for(int i=0;i
第一个for循环中有错误
Scanner sc = new Scanner(new File("input1.txt"));
String [][] array = new String [9][9];
try{
for(int i = 0; i < array.length; i++) { // your error was here. you wrote int i = 0 i > array.length; i++
for(int j = 0; j < array[0].length; j++) {
array[i][j] = sc.next();
System.out.print(array[i][j] + " ");
}
}
}catch(Exception e){
System.out.print("error");
}
Scanner sc=新扫描仪(新文件(“input1.txt”);
字符串[][]数组=新字符串[9][9];
试一试{
对于(inti=0;iarray.length;i++
对于(int j=0;j
您应该将(int i=0;i>array.length;i++)的更改为(int i=0;i
@Eritrean为什么不把这个作为答案发布?这是他的问题。你的下一步将不会编译Mohsen_Fatemi,你忘了将字符串数组更改为intarray@GeorgeWeekson首先查看代码:/n数组的类型是int
无论如何,不确定这是否正确,OPs文件不包含int的字符串表示形式,而不是实际的int.ifScanner.nextInt()时忘记
读取文本整数或字符串整数扫描程序具有类型。它将读取您调用的类型。如果无法读取,则会读取nextInt、nextDouble、nextFloat、nextBigDecimal等@InputMismatchException。例如,如果您有数字并尝试将其存储在布尔数组中,则会抛出该异常。这将以异常结束。@JohnFore yes,发生这种情况。
Scanner sc = new Scanner(new File("input1.txt"));
String [][] array = new String [9][9];
try{
for(int i = 0; i < array.length; i++) { // your error was here. you wrote int i = 0 i > array.length; i++
for(int j = 0; j < array[0].length; j++) {
array[i][j] = sc.next();
System.out.print(array[i][j] + " ");
}
}
}catch(Exception e){
System.out.print("error");
}