繁体   English   中英

BigDecimal在小数点后有2个分数?

[英]BigDecimal with 2 fraction after decimal point?

我希望在小数点后面有一个格式为2位小数的BigDecimal。 总是。

根据一些布尔检查,我有时会返回一个BigDecimal.ZERO; 在这种情况下,JSF页面只显示“0”,尽管我设置<f:convertNumber minFractionDigits="2" maxFractionDigits="2"/>

我不明白这一点,但是我怎么能强制执行2位数呢?

有两种方法可以做到这一点

你可以使用内置的BigDecimal函数

myBigDecimal.SetScale(2, RoundingMode.HALF_UP);

这会返回一个大小的十进制数,超过小数后的2位数,也会向上舍入。(还有其他舍入方法)

要么

你可以使用jsf convertNumber标签

<f:convertNumber maxFractionDigits="2" minFractionDigits="2" />

尝试格式化这样的数字:

    <h:outputText value="#{myBean.bd1}">
        <f:convertNumber pattern="0.00" />
    </h:outputText>

注意:请注意接受答案中有关四舍五入的警告。

试试吧

<af:convertNumber maxIntegerDigits="3" maxFractionDigits="2"   minFractionDigits="2" pattern="###.##" />

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM