如果在我的程序中我使用scanner.NextDouble() 并且用户输入了不是双精度的东西,即任何类型的字符,我如何重新提示他们输入有效的双精度?我尝试抛出异常并捕获它,但我要做的就是告诉他们这是错误的,我不确定如何将控制权转移回 try 块。如果有人有任何意见,将不胜感激!
private double requestDoubleFromUser( String prompt )
{
/*** Local Variables ***/
Scanner sc = new Scanner( System.in );
double userInput = 0;
try
{
/*** Get input from user ***/
System.out.print( prompt );
userInput = sc.nextDouble();
}
catch( Exception e )
{
System.out.println("That was not a double");
}
return userInput;
}
谢谢