Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 什么';将int值移位0的目的是什么?_Java_Bit Shift - Fatal编程技术网

Java 什么';将int值移位0的目的是什么?

Java 什么';将int值移位0的目的是什么?,java,bit-shift,Java,Bit Shift,查看java.nio.DirectByteBuffer类的源代码,我发现: if ((length << 0) > Bits.JNI_COPY_TO_ARRAY_THRESHOLD) .... if((长度位.JNI\u复制到\u数组\u阈值)。。。。 将长度移位为零位的目的是什么?这可能是性能优化还是其他原因?正在执行i我想我已经解决了它 在类JavaDocs中: // -- This file was mechanically generated: Do not edi

查看java.nio.DirectByteBuffer类的源代码,我发现:

if ((length << 0) > Bits.JNI_COPY_TO_ARRAY_THRESHOLD) ....
if((长度位.JNI\u复制到\u数组\u阈值)。。。。

将长度移位为零位的目的是什么?这可能是性能优化还是其他原因?

正在执行
i我想我已经解决了它

在类JavaDocs中:

// -- This file was mechanically generated: Do not edit! -- //

因此,它不是手工编码的。它是脚本生成的,脚本编写者没有为位移位量为零的情况添加优化。

代码>我从来没有在您的帖子标题中看到过这个词在上下文中使用过。问得好。我查看了源代码,注意到这个习惯用法被多次使用。Mysterious。有些人想检查javac是否正确地删除了它们。@ThomasJungblut你是在猜测,还是你有确切的信息表明这是代码如何进入Java src的?只是一个笑话。虽然试图搞笑。这解释了操作的输出,但并不能真正解释真正的问题-为什么要编写代码来这样做?问题n是,目的是什么,我的回答表明它不可能有一个合理的目的。@mattb-如果你想挑剔一个答案,理解问题的字面意思是值得的。@mattb我迟到了一年,但我现在正在做,它是在一个达到0的循环中。这是多余的,但知道它是正确的是很好的这是一个空运算,所以它不会中断任何内容。对于ShortBuffer、IntBuffer、LongBuffer,偏移量将通过左移乘以2、4、8等。优化