数値のみを取得し、精度 2 ですべてを丸めるには、JTable に double 型の列の 1 つを作成する必要があります。この精度で表示するだけでなく、精度 2 で数値をデータに書き込む必要があります。 write 2.456 セルとデータに 2.46 を書き込む必要があります。これを行う最善の方法は何ですか? カスタム セル レンダラーまたはカスタム セル エディターを使用しますか? 私はこのコードを持っていますが、データを変更しないでください。セルに正しいデータのみが表示されます
public class DoubleCellRenderer extends DefaultTableCellRenderer {
int precision = 0;
Number numberValue;
NumberFormat nf;
public DoubleCellRenderer(int aPrecision) {
super();
precision = aPrecision;
setHorizontalAlignment(SwingConstants.RIGHT);
nf = NumberFormat.getNumberInstance();
nf.setMinimumFractionDigits(aPrecision);
nf.setMaximumFractionDigits(aPrecision);
}
@Override
public void setValue(Object value) {
if ((value != null) && (value instanceof Number)) {
numberValue = (Number) value;
value = nf.format(numberValue.doubleValue());
}
super.setValue(value);
}
}