我目前正在将Java应用程序从32位迁移到64位,我想知道在32位和64位jvm之间切换时是否存在使用不同二元运算符的行为更改,尤其是位移运算符({{ 1}},<<
和>>
)。
谢谢!
答案 0 :(得分:3)
简答:不。答案很长:noooooooo。
所有Java原语操作都独立于JVM和底层机器的字大小。
答案 1 :(得分:3)
Java语言和JVM是基于标准的平台。标准的工作方式是编写在其上的程序应该表现相同,无论它们运行的底层硬件平台如何
因此,无论是在32位机器还是64位机器上运行,Java中的bitshift都应该表现相同。数据类型(及其行为)由语言规范定义,而不是底层硬件平台。