Kotlin Long to Float的区别

时间:2017-12-20 13:20:48

标签: kotlin

我正在尝试将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

可以看出,这些值之间存在细微差别。如何确保转换时返回相同的值?

1 个答案:

答案 0 :(得分:0)

l: Int = 1513741500
f: Float = 1.51374144E9
d: Double = 1.5137415E9

因此,如果您打算使用大数字,请使用Double而不是Float。