- 用就地捕获异常的方法来处理以下问题:通过小窗口输入一个double型的数字,如果第一次输入的内容无法转换成double,则重新出现输入框,并在输入框上显示“对不起,您输入的格式有误,请您重新输入”,第二次输入正确后显示该数字;如果第一次格式输入正确,则直接显示输出该数字,不再出现提示框。
-
import static java.lang.System.out; class Thread01{ public static void main(String[]args){ while(true) { try { String decimalPiont = javax.swing.JOptionPane.showInputDialog("请输入一个小数"); double figure = Double.parseDouble(decimalPiont); out.println(figure); break; } catch (NumberFormatException ex) { out.println("输入格式错误,请重新输入"); } } } }
注:弹出框输入权交由用户输入时,要在系统检测出异常之前在代码里去捕获异常。分为就地捕获、向前抛出;对于上述代码,要求用户输入小数,但当用户输入整数时,JVM机会优先进行强制转换,所以输入整数时是不会抛出异常的。
-
解决方法:使用自定义异常可能实现不了,没有想到什么方法 在满足自动类型转换时不让他进行转换;
第七章异常处理
最新推荐文章于 2024-07-04 09:24:51 发布