在Kotlin舍入一个双精度到小数点后两位。 BigDecimal.doubleValue不存在?
我试图找到一个简单的方法来四舍五入到小数点后两位。 我正在使用BigDecimal来做的伎俩,但注意到java.math.BigDecimal类的函数doubleValue
不存在。
以下功能:
fun Double.roundTo2DecimalPlaces() = BigDecimal(this).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()
给我这个编译错误:
:compileKotlin Using kotlin incremental compilation w: The '-d' option with a directory destination is ignored because '-module' is specified e: -{FilePathAndNameWereHere}-: (20, 14): Unresolved reference: doubleValue :compileKotlin FAILED
Kotlin版本是1.1.1
你可以不使用toDouble()
而不是:
fun Double.roundTo2DecimalPlaces() = BigDecimal(this).setScale(2, BigDecimal.ROUND_HALF_UP).toDouble()