Java异常名称

Java异常名称,java,swing,exception-handling,jframe,Java,Swing,Exception Handling,Jframe,下面是我当前的代码……这是一个Jframe,用于根据用户的BMI计算其理想体重。当用户输入无效数据时,我目前有一个try,catch来测试NumberFormatException,但我还想测试另一件事。我想要的是:当用户在输入区域中没有输入任何数据时,它会抛出另一个错误。我不知道这种异常的名称,甚至不知道是否存在 private void calculateButtoActionPerformed(java.awt.event.ActionEvent evt){ //字符串声明 字符串测量系统

下面是我当前的代码……这是一个Jframe,用于根据用户的BMI计算其理想体重。当用户输入无效数据时,我目前有一个try,catch来测试NumberFormatException,但我还想测试另一件事。我想要的是:当用户在输入区域中没有输入任何数据时,它会抛出另一个错误。我不知道这种异常的名称,甚至不知道是否存在

private void calculateButtoActionPerformed(java.awt.event.ActionEvent evt){
//字符串声明
字符串测量系统;
字符串名;
双高;
双输出重量;
//清除下一项的输出框
outputField.setText(“”);
试一试{
//变量定义,也创建
//四舍五入的十进制格式
DecimalFormat df=新的DecimalFormat(“#.###”);
name=inputnameField.getText();
height=Double.parseDouble(inputheightField.getText());
measurementSystem=inputmeasureField.getText();
//检查measurementSystem中的值,
//如果等于M或I(忽略大小写),
//它将运行任意一个代码。
//如果两者都不是,它会告诉用户输入一个有效值,
//并重置它们的测量输入框。
if(“M”。相等信号情况(测量系统)){
输出重量=高度*高度*25;
setText(name+“)的理想权重是“+df.format(outputweight)+“kgs”);
inputheightField.setText(“”);
inputmeasureField.setText(“”);
inputnameField.setText(“”);
}
否则,如果(“I”。相等信号情况(测量系统)){
输出重量=高度*高度*25/703;
setText(name+“)的理想权重为“+df.format(outputweight)+”lbs.”;
inputheightField.setText(“”);
inputmeasureField.setText(“”);
inputnameField.setText(“”);
}
否则{
setText(“请输入有效的测量系统”);
inputmeasureField.setText(“”);
} 
}
捕获(数字格式){
setText(“请输入有效数字”);
inputheightField.setText(“”);
}
}                                               

您始终可以创建一个自定义异常类,并让它扩展最接近的相关异常类。我不知道有任何异常表达了这一点。您可以尝试一个似乎过于宽泛的
IllegalArgumentException
,也可以创建自己的异常。不需要异常来完成此操作。只需使用
if
语句:
if(name.isEmpty()){//display error message}
@jbnize当我将您的建议放在代码底部时,它会给出错误“'void'type not allowed here.”?(不过,到目前为止,你是我唯一能理解答案的人,谢谢!)我无法解释错误,除非看到导致错误的代码。这不应该是“在代码的底部”。它应该是您想要测试字段空性的地方:在尝试将其解析为double之前。