簡體   English   中英

java.math.BigDecimal無法轉換為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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM