java在Netbeans中如何将Getter方法从main调用到Jframe?
我被困在我想做的这段代码上了。我有一个在Netbeans中工作的程序,它有一个主java表单和一个类似弹出窗口的JFrame。框架有一个按钮,它打印我在主框架中的Getter方法中输入的值。一旦我运行程序并单击按钮,程序就会崩溃,我得到的结果如下:
"Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException:
empty String
at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1842)
at sun.misc.FloatingDecimal.parseFloat(FloatingDecimal.java:122)"
这是我的主代码:`
public void Iva(){
float tiv = Float.parseFloat(tiva); // tiva is a global, String type variable
if("Papeleria".equals(tiva)){
iva = (float) (tiv*0.16); // iva is a global Float type variable
}
if("Supermercado".equals(tiva)){
iva = (float) (tiv*0.12);
}
if("Supermercado".equals(tiva)){
iva = (float) (tiv*0.14);
}
ivi = Float.toString(iva); // ivi is a global, String type variable
}
public String getIva() {
Iva();
return ivi;
}
这就是我在画面中所做的动作:
private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
/*taiva is the text area where i want to show iva
mainy is what i called the main's class*/
taiva.setText(mainy.getIva());
}
# 1 楼答案
您的程序在以下代码行失败:
您正试图解析一个空字符串(
tiva
),这将导致NumberFormatException
通过使用if语句可以避免此问题,如下所示:
希望这有帮助;)