for(int i = 0 ; i < 10 ; i++)
{
out.println(9);
}
out.close();
while (s.hasNextLine()) {
int i = s.nextInt();
if (i == 9);
{
System.out.print("*");
}
}
s.close();
は、それはまだ "*" 10を出力し、しかし、私はその後、このエラーが出る:hasNextLineではエラーが発生しますが、hasNextではエラーが発生しないのはなぜですか?
**********java.util.NoSuchElementException
at java.util.Scanner.throwFor(Unknown Source)
at java.util.Scanner.next(Unknown Source)
at java.util.Scanner.nextInt(Unknown Source)
at java.util.Scanner.nextInt(Unknown Source)
at insertionSort.main(insertionSort.java:18)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at edu.rice.cs.drjava.model.compiler.JavacCompiler.runCommand(JavacCompiler.java:272)
しかし、私はのhasNextの代わりhasNextLineを使用している場合、それが正常に動作します。
なぜhasNextが動作するのだろうと思っていますが、hasNextLineはそうではありません。
変数 's'とは何ですか? –
は、ファイルをスキャンするスキャナです – Secret