Java >>和>>>右移运算符之间有任何不同的性能吗?

Sea*_*wen 5 java performance bit-shift micro-optimization

是否有理由认为Java中的>>(signed)和>>>(无符号)右位移位运算符会有不同的表现?我在机器上检测不到任何差异.

这纯粹是一个学术问题; 它永远不会成为我敢肯定的瓶颈.我知道:最好写出你最重要的意思; 例如,使用>>除以2.

我假设它归结为哪些体系结构具有作为指令实现的操作.

Tim*_*der 4

不会。您的编译器会将这些转换为字节码,而 JVM 将为您的架构解释字节码。我认为可以安全地假设您的架构具有一个指令集,其中包括在几个时钟周期内完成的两个操作。

无论如何,这些运算符的行为存在差异,因此您不能互换它们。