舍入计算百分比



这是我用来计算百分比的公式:

(new BigDecimal($V{YRSSN_CountsMeasure}).compareTo(BigDecimal.ZERO) == 0) ? "0.0%" :
    (100 * $V{Premium_YesMeasure}.floatValue() / $V{YRSSN_CountsMeasure}.floatValue()) + "%"

效果很好,除了它没有正确格式化。我想要点后 1 个小数点,它带来了 7!我尝试使用#,##0.0模式,坚果它不起作用。

我该如何解决它?

假设所有变量类型都是 BigDecimal,这应该适合您:

(new BigDecimal($V{YRSSN_CountsMeasure}).compareTo(BigDecimal.ZERO) == 0) ? "0.0%" : ($V{Premium_YesMeasure}.divide($V{YRSSN_CountsMeasure}).multiply(BigDecimal.valueOf(100)).setScale(1)) + "%"

编辑:添加了缺失(在开始时。

最新更新