二进制将Int转换为Kotlin中的Float

asc*_*erk 3 type-conversion kotlin

我想处理一个从文件读取为4字节整数的值,就好像它是一个4字节的IEEE Float并将其转换为这样的变量.有没有经验,如何以简单优雅的方式在Kotlin中完成.

Oli*_*rth 7

使用java.lang.Float.intBitsToFloat.请注意,这假设一个特定的(虽然是传统的)位布局 - 有关详细信息,请参阅inverse(floatToIntBits)文档.

例:

import java.lang.Float.intBitsToFloat

// ...

val x = 0x4D8EF3C2
println(intBitsToFloat(x))  // 2.99792448E8
Run Code Online (Sandbox Code Playgroud)

现场演示.