我正在尝试将Long值转换为Kotlin中的Float。但是,我看到它正在小幅改变值。
这是一个简单的测试运行:
import java.text.DecimalFormat
fun main(args: Array<String>) {
val l = 1513741500
val f:Float = l.toFloat()
val df = DecimalFormat("0")
println(df.format(f))
}
Output:
1513741440
可以看出,两个值之间存在细微差异。如何确保转换时返回相同的值?
最佳答案
l: Int = 1513741500
f: Float = 1.51374144E9
d: Double = 1.5137415E9
因此,如果您打算使用大量数字,请使用Double而不是Float。
关于kotlin - Kotlin Long与Float的区别,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47907006/