如何使用扫描仪(Java)仅读取一个值?



>我有多个 Scanner 方法来保存输入,但是当我执行代码并输入例如"word 5"时,扫描仪也会读取下一个 Scanner 方法的输入。我怎样才能阻止它?

...
correctInput = true;
for (int i = 0; i < runnI; i++) {
System.out.println(".....");
array1[i] = sc.next();
System.out.println(".....");
do {
try {
array2[i] = sc.nextDouble();
correctInput= false;
} catch (InputMismatchException e) {
System.out.println("Wrong");
sc.next();
}
} while (correctInput);
}

伙计们,当我在第一个System.out.println()之前写sc.nextLine()并在它之后写array1[i] = sc.nextLine()时,我发现它有效

相关内容