Java-Scanner没有接收输入

Java-Scanner没有接收输入,java,arrays,exception,sum,Java,Arrays,Exception,Sum,在这个程序中,我试图得到矩阵的行和列之和 这是我的代码: import java.util.Scanner; public class RowSum { int xin=0, run; int [][]mun;int[] b;int[] c; public void inputarray(int m,int n) { System.out.println("Enter number"); Scanner xam=new Scanner(System.in); run=xam.nextInt()

在这个程序中,我试图得到矩阵的行和列之和

这是我的代码:

import java.util.Scanner;
public class RowSum {
int xin=0, run;
int [][]mun;int[] b;int[] c;

public void inputarray(int m,int n)
{
System.out.println("Enter number");
Scanner xam=new Scanner(System.in);
run=xam.nextInt();
mun[m][n]=run;
m--;n--;
if(n!=0 && m!=0)
{
inputarray(m,n);
}
xam.close();
}
public void sum_rows_columns(int m, int n){
b[xin]=0;c[xin]=0;
b[xin]=b[xin]+mun[m][n];
c[xin]=b[xin]+mun[n][m];        
++xin;
n--; m--;
if(n!=0 && m!=0)
{
sum_rows_columns(m,n);
}
}
public void PrintSumArray(int m,int n)
{
System.out.println("sum of" + xin + "row " +b[xin]);
System.out.println("sum of" + xin + "column " +c[xin]);
n--;
m--;
if(n!=0 && m!=0){
    PrintSumArray(m,n);
}
}
}
这是主课

import java.util.Scanner;
public class MatrixSum {

public static void main(String[] args){
int m,n;
String S1="Enter number of rows";
String S2="Enter number of columns";
System.out.println(S1);
Scanner inpu=new Scanner(System.in);
n=inpu.nextInt();
System.out.println(S2);
Scanner inp=new Scanner(System.in);
    m=inp.nextInt();
            inp.close();
            inpu.close();
RowSum RS=new RowSum(); 
RS.inputarray(m,n);
RS.sum_rows_columns(m,n);
RS.PrintSumArray(m,n);
        }
}
我试图在运行时声明数组。当我尝试运行时,它在控制台中显示以下输出:

输出:

输入行数 3. 输入列数 3. 线程“main”java.lang中出现异常。错误:未解决的编译问题: 无法将扫描仪解析为类型 无法将扫描仪解析为类型

at RowSum.inputarray(RowSum.java:10)
at MatrixSum.main(MatrixSum.java:18)
结束

  inp.close();
  inpu.close();

在主方法的最后。如果您以前关闭它们,也会导致System.in关闭。这意味着扫描器无法读取任何数据,因此会抛出
NoSuchElementException

您的java版本<代码>1.5之前的Java版本,Java.util.Scanner不存在。