对 BigDecimal 的结果感到困惑

Confused about result of BigDecimal

为什么 BigDecimal(9105.0).div(BigDecimal(100.toDouble()))=91.0 而不是 91.05。如何保持小数点的精度?

您使用 .div 方法而不是 .divide 方法

.div 的 kotlin 实现是:

@kotlin.internal.InlineOnly
public inline operator fun BigDecimal.div(other: BigDecimal): BigDecimal = this.divide(other, RoundingMode.HALF_EVEN)

如您所见,自动激活了 RoundingMode