我有一个JTable
,我想添加列值。我正在尝试这段代码:
try{
double t = 0.00;
DecimalFormat df = new DecimalFormat("0.00");
int rows = empTbl.getRowCount();
for(int row =0; row<=rows; row++)
{
String am = (String) empTbl.getValueAt(row, 7);
double d = (double) df.parse(am);
double ans = d+t;
jLabel7.setText("Total Sale : "+ans);
}
}
catch(ParseException ex){ }
为什么这段代码不起作用?
答案 0 :(得分:3)
尝试避免Java中的任何解析,有适当的数据类型
直接向XxxTableModel或JTable添加Double / Long / Integer值(取决于未知代码,您的问题)
将XxxTableModel中的getColumnClass更改为Double / Long / Integer
添加TableModelListener并覆盖setValueAt(正确的公式),然后在JTables Cell中的值发生变化时允许公式
Double / Float hasn't decimal places (Idiotic thread, with interesting!!! downvoters)
使用XxxTableCellRenderer将输出格式化为Swing GUI