的低32位
long被取出并放入
int。
不过,这是数学运算:
- 将负值
long
视为2^64
该值的正值。因此-1
被视为2 ^ 64-1。(这是 无符号的 64位值,这是该值实际以二进制形式表示的方式。) - 将结果乘以2 ^ 32。(这是 无符号的 32位值。)
- 如果结果> = 2 ^ 31,则减去2 ^ 32。(这是带符号的32位值Java
int
。)

的低32位
long被取出并放入
int。
不过,这是数学运算:
long视为
2^64该值的正值。因此
-1被视为2 ^ 64-1。(这是 无符号的 64位值,这是该值实际以二进制形式表示的方式。)
int。)