【发布时间】:2012-02-12 20:08:13
【问题描述】:
我有以下问题:
如果询问是否使用移位与乘法或除法,例如答案是,让 JVM 进行优化。
此处示例:is-shifting-bits-faster-than-multiplying
现在我正在查看 jdk 源代码,例如 Priority Queue,代码仅对乘法和除法(有符号和无符号)使用移位。
理所当然地认为 SO 中的帖子是有效答案我想知道为什么在 jdk 中他们更喜欢通过转移来做到这一点?
是不是一些与性能无关的微妙细节?我怀疑它一定与上溢/下溢乘法和除法有关,但我不确定。
有人有想法吗?使用移位是否可以更好地处理微妙的溢出问题?还是只是口味问题?
【问题讨论】:
标签: java optimization collections bit-manipulation priority-queue