gpt4 book ai didi

kotlin - 在 Kotlin 中将大数转换为字节

转载 作者:行者123 更新时间:2023-12-01 07:24:12 27 4
gpt4 key购买 nike

为什么double65555转换为 byte产生 19 的结果在 Kotlin ?

最佳答案

那是因为从较宽的类型到较小尺寸的类型的数值转换。 Double ( IEEE 754 double precision number ) 的整数部分被分解为 2 的幂,如 65555 = 217 + 24 + 22 + 20 = 65536 + 16 + 2 + 1,以二进制形式存储为(从高位到低位):

 ‭... 0 1  0 0 0 0 0 0 0 0  0 0 0 1 0 0 1 1‬

当这个数字转换为 Byte ,仅保留其最低 8 位:
 ... _ ‭_  _ _ _ _ _ _ _ _  0 0 0 1 0 0 1 1‬

结果是 24 + 22 + 20 = 16 + 2 + 1 = 19。

关于kotlin - 在 Kotlin 中将大数转换为字节,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44371496/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com