|
|
1
2
对于范围内的值,可以将两个比较转换为一个比较。这可以将成本减半。如果值太负,当前只执行一次比较。(这可能不是你的典型情况)
|
|
|
2
1
当您将int转换为short时,永远不会得到剪切功能,位被截断,然后被读取为short。 例如(短)-40000变为25536,而不是您预期的-32768。 也许你必须编辑你的问题,我相信你知道如果你反汇编字节码。 此外,还有一个JIT编译器可以将此代码(因为它经常被调用)优化为与平台相关的指令。 请将此答案转换为评论。 |
|
|
3
0
浮点到整数转换是您在x86处理器上可以执行的最慢的操作之一,因为它需要修改X87舍入模式(两次),这将序列化和刷新处理器。如果您可以使用SSE指令而不是X87指令,则可以获得相当大的加速,但我不知道是否有办法在Java中做到这一点。也许可以尝试使用x86 JVM? |
|
|
4
0
这是python,但应该易于转换。我不知道浮点运算的开销有多大,但是如果你能把它保存在整数寄存器中,你可能会得到一些提升;这假设你可以把IEEE754位重新解释为一个in t(这就是我名字不好的float2hex所做的)。
这种分支可能会杀死你,但也许这提供了一些有用的东西?这一轮接近零。 |
|
|
5
-1
int sample=(int)floatval)&0xffff; |
|
|
user29759326 · 如何返回递归函数中的最后一个值? 1 年前 |
|
|
malife89 · 将java中的字符串读取为正确的日期格式 1 年前 |
|
|
Tim · 在java中,有没有更快的方法将字节数组写入文件? 1 年前 |
|
|
rudraraj · java中未声明最终变量 1 年前 |
|
|
Bala Ji · 以下BFS的实施效率如何? 1 年前 |