0

//我无法弄清楚出了什么问题?请帮我。我能够使用 //scanner。我无法输入值。Java.Util.NoSuchElementException: No Line //Found。

 //String arrayValue = null;
                    int Rows= boardsize, Columns=boardsize;
                    int[][] sudokuArray = new int[Rows][Columns];
                    String[] sudokuTempArray;
                    String delimiter = "\\,";

                    @SuppressWarnings("resource")
                    Scanner userInput = new Scanner(System.in);


                    for(int i=0;i<Rows;i++ ){   
                        System.out.println("Enter the value of array separated by ',' for row" + i);

                        while(userInput.hasNext())
                        {
                            String arrayValue = userInput.next();
                            sudokuTempArray = arrayValue.split(delimiter);
                            if(sudokuTempArray.length == Rows)
                            {

                                for (int j = 0;j<Columns;j++)
                                {
                                    sudokuArray[i][j] = Integer.parseInt(sudokuTempArray[j]);
                                    System.out.println(sudokuArray[i][j]);
                                }

                            }
                        }
                        /*
                            else
                            {
                                System.out.println("Try again!");
                            }*/


                    }
4

3 回答 3

0

如果您使用了以前从 System.in 读取的扫描仪并关闭了该扫描仪,则您将关闭 System.in InputStream。

您之前是否关闭了从 System.in 读取的扫描仪?

于 2013-10-19T08:26:17.470 回答
0

是的,这是一个常见错误。看看我对这个问题的回答。

java - 扫描程序类 NoSuchElementFoundException

他基本上以另一种方法关闭了输入,您可能也在这样做。

在您的代码库中搜索 .close。

看到这个:

java - 扫描程序类 NoSuchElementFoundException

于 2013-10-19T09:01:55.790 回答
0

导入 java.util.*;导入 java.util.StringTokenizer;班班{扫描仪sc =新扫描仪(System.in);无效测试(int x){

    String s=sc.nextLine();
    StringTokenizer st=new StringTokenizer(s);
    String wen="";
    {
        while(st.hasMoreTokens())
        {
            String temp=st.nextToken();
            for(int i=1;i<=x;i++)
            {
                wen=wen+temp+" ";
            }
        }
        System.out.print(wen);
    }
}
public static void main(String args[])
{
    Scanner sc=new Scanner(System.in);
    int n=sc.nextInt();
    shift reff=new shift();
    if(n<=0)
    {
        System.out.print("EMPTY");
    }
    else
    {
    reff.test(n);
    }
}

} //输出:java.util.NoSuchElementException:找不到行

于 2016-12-09T06:47:36.243 回答