最佳答案
我需要从 BigDecimal
和 RoundingMode.HALF_UP
中移除尾随零。例如,
Value Output
15.3456 <=> 15.35
15.999 <=> 16 //No trailing zeros.
15.99 <=> 15.99
15.0051 <=> 15.01
15.0001 <=> 15 //No trailing zeros.
15.000000<=> 15 //No trailing zeros.
15.00 <=> 15 //No trailing zeros.
stripTrailingZeros()
可以工作,但它会在以下情况下返回科学符号:
new BigDecimal("600.0").setScale(2, RoundingMode.HALF_UP).stripTrailingZeros();
在本例中,它返回 6E+2
。我需要在 JSF 中的自定义转换器中使用它,因为它对于最终用户来说可能很难看。那么,正确的做法是什么呢?