Looking to the source code of java.nio.DirectByteBuffer class, I have found this:
if ((length << 0) > Bits.JNI_COPY_TO_ARRAY_THRESHOLD) ....
Doing i << 0
is a no-op. It evaluates to the same as i
.
The i << 0
is plainly redundant. There is no good reason for a Java programmer to write this code deliberately.
I'd say that this code is:
<<
operator does,However, there's a good chance that the bytecode or JIT compiler will optimize this away, or that it won't impact significantly on performance anyway.
I think I've solved it.
In the class JavaDocs:
// -- This file was mechanically generated: Do not edit! -- //
So it is not hand coded. It was script-generated and the script writer did not add an optimisation for the case when the amount to bit shift by is zero.