大多数答案都使用Java(例如String.format)来完成工作,但是我需要一种纯粹使用原生Kotlin来完成此工作的方法。

说一个有趣的方法Float.toString(numOfDec:Int)
我想将值取整,例如:

35.229938f.toString(1)返回“35.2”
35.899991f.toString(2)返回“35.90”

最佳答案

如果要返回浮点数,但仅除去尾随的小数,请使用以下命令:

fun Float.roundToDecimals(decimals: Int): Float {
    var dotAt = 1
    repeat(decimals) { dotAt *= 10 }
    val roundedValue = (this * dotAt).roundToInt()
    return (roundedValue / dotAt) + (roundedValue % dotAt).toFloat() / dotAt
}

10-06 14:57