0

列の1つがドルとセントの金額であるJTableがあります。このTableColumnをDoubleとして定義すると、右揃えになり、並べ替えの際に、文字列ではなくdoubleとして並べ替えられます。これはすべてうまくいっています。私の問題は、後続のゼロを切り捨てることです。100.00は100として表示されます0.00は0として表示されます。TableCellRendererを試しましたが、これによりお金の列が末尾のゼロで表示されますが、金額はすべて左揃えになり、JTableはこれを文字列として認識します。
末尾のゼロをディスプレイに保持するだけでなく、データ型も保持して、並べ替えと右揃えが行われるようにします。これを行うためのより良い方法がある場合、データ型はdoubleである必要はありません。

4

2 に答える 2

4

完璧なリンクを見つけました。これは初めて機能しました。コードをコピーするだけです。

http://tips4java.wordpress.com/2008/10/11/table-format-renderers/

于 2011-07-22T06:34:48.490 に答える
3

お金を正確に処理したい場合は、セントと整数、または大量に処理する必要がある場合はBigIntsとして表す必要があります。浮動小数点数は精度の問題があるため、問題を引き起こす可能性があります

これにより、並べ替えの機能が維持され、末尾のゼロの問題が解消され、必要な精度が得られます。カスタムレンダラーを使用すると、必要な小数点を取得できます。

于 2011-07-22T09:25:05.217 に答える