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 cannot be cast to 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));
*
有什么方法可以添加float类型的值吗??
*
改变
double amount = Double.parseDouble((String) table.getValueAt(1, 6) );
到
double amount = table.getValueAt(1, 6).doubleValue();
无需将 BigDecimal
转换为 String
即可生成 double
.
尝试这样的事情:
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());
我正在尝试添加数据类型(货币)的行值,其中在 Jtable 中自动形成小数点后的零,如下所示 55.0000 28.0000 60.0000 20.0000 50.0000
运行时日志显示此错误
java.math.BigDecimal cannot be cast to 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));
*
有什么方法可以添加float类型的值吗??
-
*
改变
double amount = Double.parseDouble((String) table.getValueAt(1, 6) );
到
double amount = table.getValueAt(1, 6).doubleValue();
无需将 BigDecimal
转换为 String
即可生成 double
.
尝试这样的事情:
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());