编程语言
首页 > 编程语言> > java.lang.NumberFormatException:对于输入字符串:“20,475.00”

java.lang.NumberFormatException:对于输入字符串:“20,475.00”

作者:互联网

我想要获得我的系统的运行平衡.为此,我从列AMOUNT获取jtable中所有数字的总和,并将总和减去txtLoanAmount中的值.
 这是我的代码片段:

String LoanAmount = txtLoanAmount.getText();
float f = Float.valueOf(LoanAmount.trim()).floatValue();
float balance = 0; 
float sum = 0;

for(int i=0;i<=tableLedger.getRowCount()-1;i++) {
    sum = sum + Float.parseFloat(tableLedger.getModel().getValueAt(i, 2).toString());
}
balance = f - sum;
System.out.println(balance);

现在我收到错误消息:

Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: For input string: "20,475.00"

我怎么解决这个问题?任何帮助将不胜感激.谢谢

解决方法:

由于Float.parseFloat()和Float.valueOf()总是假设数字是您的本地格式,这里是一个简短的示例,如果您的语言环境与您获得的数字格式不匹配,如何进行本地化解析.

String str = "20,475.00";
NumberFormat nf = NumberFormat.getInstance(Locale.US); // Looks like a US format
float f = nf.parse(str).floatValue();

标签:java,numberformatter
来源: https://codeday.me/bug/20191008/1870821.html