![](/img/trans.png)
[英]java.lang.ClassCastException: java.math.BigDecimal cannot be cast to java.lang.String
[英]java.math.BigDecimal cannot be cast to java.lang.String?
我正在嘗試添加數據類型(貨幣)的行值,其中十進制后的零在Jtable中自動形成,像這樣55.0000 28.0000 60.0000 20.0000 50.0000
在運行時日志中顯示此錯誤
java.math.BigDecimal不能強制轉換為java.lang.String
這是來自Jtable的行添加代碼
double total = 0;
for(int i = 0; i<table.getRowCount(); i++){
double amount = Double.parseDouble((String) table.getValueAt(1, 6) );
total+=amount;
}
totalSum.setText(String.valueOf(total));
*
嘗試這樣的事情:
BigDecimal total = BigDecimal.ZERO;
for (int i = 0; i < table.getRowCount(); ++i) {
final BigDecimal amount = (BigDecimal)table.getValueAt(i, 6);
total = total.add(amount);
}
totalSum.setText(total.toString());
更改
double amount = Double.parseDouble((String) table.getValueAt(1, 6) );
至
double amount = table.getValueAt(1, 6).doubleValue();
無需將BigDecimal
轉換為String
即可生成double
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.