我在DirectByteBuffer.java中找到了这段代码:
private long ix(int i) {
return address + (i << 0);
}
是否有任何特殊目的,或与
相同private long ix(int i) {
return address + i;
}
谁能解释,非常感谢。
答案 0 :(得分:2)
它完全相同,只是它清楚地表明它没有被转移。
如果您查看ShortBuffer或CharBuffer,您可能会看到<< 1
以及IntBuffer和FloatBuffer <<2
以及LongBuffer和DoubleBuffer << 3
如果查看源代码,还会有很多空行,格式化表明代码是从公共模板生成的,这就是生成<< 0
的原因。
答案 1 :(得分:0)
如果有其他方法基本上与ix
重复但具有不同的班次,则可以在这些方法之间保持一致。除此之外,它与您编写的第二种方法完全相同。