数据转换出错了 请高手进来帮帮忙啊

来源:百度知道 编辑:UC知道 时间:2024/06/06 06:11:26
我的代码:要实现把2个数字字符串转换成数值后并相减,然后存到数据库中

private void updateStoreMethod(){ //定义了个更新数据库方法
String flag=be.jTextField10.getText();//库存编号(主键)
int num1=Integer.parseInt(be.jTextField11.getText()); //库存数量
int num2=Integer.parseInt(be.jTextField12.getText()); //退货数量
String num=String.valueOf(num1-num2);
String sql="update storetable set goodsnum ='"+num+"' where storeid='"+flag+"'";
try {
ldb.runUpdate(sql);
} catch (SQLException e) {
e.printStackTrace();
}
}
出错提示:
Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: For input string: ""
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:468)
at buyPackage.BuyExitListener.updateStoreMethod(BuyExitListener.java:174)
at buyPackage.BuyExitListener.actionPerformed(BuyExitListener.jav

forInputString:你传的参数不是String

String flag=be.jTextField10.getText();
这句如果得能得到结果,
后面的也一定得到的就是String

再说如果不是String ,trim()应该抛错的。

首先你要确保着两个TextField里的字符串一定是数值型的字符串才可以,另外,看着两个字符串的值有没有超过Integer的最大范围

恩,trim一下,我觉得可能也是与空格有关

Integer.parseInt("");
你在main方法里运行一下上边这一句,就知道了