在编写下面的代码时,我打算从键盘输入双精度值。如果输入不是双精度值,则将弹出一个对话框窗口再次强制输入。
boolean continueLoop=true;
do
{
try
{
String firstNumber = JOptionPane.showInputDialog("Enter first floating-point value" );
number1 = Double.parseDouble( firstNumber );
continueLoop=false;
}
catch ( InputMismatchException inputMismatchException )
{
JOptionPane.showMessageDialog(null,"Please type in a valid, real number","Input Error",JOptionPane.PLAIN_MESSAGE);
}
}while ( continueLoop );
但是,当我输入无效数字时,对话框窗口将永远不会显示。怎么了?
最佳答案
您必须抓住NumberFormatException
,在文档中查看Double#parseDouble。