如果我对您的理解正确,则希望该程序在失败后要求用户重新输入正确的输入。在这种情况下,您可以执行以下 *** 作:
boolean inputOk = false;while (!inputOk) { System.out.print("Define width: "); try { width = scanner.nextDouble(); inputOk = true; } catch (InputMismatchException e) { System.err.println("That's not a number!"); scanner.nextLine(); // This discards input up to the // end of line // Alternative for Java 1.6 and later // scanner.reset(); }}
注意:您 只能
捕获并重试一次
InputMismatchException。这些
nextXxx方法会引发其他异常,如果您尝试重试这些异常,则您的应用程序将陷入无限循环。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)