gpt4 book ai didi

java - 格式化大十进制。 JavaFX

转载 作者:行者123 更新时间:2023-12-01 21:56:46 26 4
gpt4 key购买 nike

我想在我的 JavaFx 应用程序的 TableColumn 中打印 BigDecimal。但我无法正确格式化它。

我已经尝试过这个:

DecimalFormat df = new DecimalFormat("#,###.00");
tc_ma_sell_amount.setCellValueFactory(cellData -> new SimpleStringProperty(df.format(cellData.getValue().getSellAmount()).toString()));

格式正确,打印 1 005 689.56。但这里的问题是,当我在应用程序中根据此列对表进行排序时,它引用这些值,就好像它们是字符串一样,并且排序不正确。

我做了以下更改:

tc_ma_sell_amount.setCellValueFactory(cellData -> new SimpleObjectProperty<BigDecimal>(cellData.getValue().getSellAmount()));

这里,格式不对。 (1005689.5600),但排序工作正常。为了获得正确的格式(“#,###.00”)和排序,我必须更改什么?

最佳答案

我自己做的。

tc_ma_sell_amount.setCellFactory(param -> {
return new TableCell<ConversionDeals, BigDecimal>(){
@Override
protected void updateItem(BigDecimal item, boolean empty) {
super.updateItem(item, empty);
if(empty || item == null){
setText("");
} else {
setText(df.format(item));
}
}
};
});

关于java - 格式化大十进制。 JavaFX,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34177785/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com