1

私はDirectByteBuffer.javaでこのコードを見つけました:

private long ix(int i) {
    return address + (i << 0);
}

特別な目的はありますか、それとも同じです

private long ix(int i) {
    return address + i;
}

説明できる人、どうもありがとう。

4

2 に答える 2

2

シフトされていないことを明確にすることを除いて、まったく同じです。

ShortBuffer または CharBuffer を見る<< 1と、IntBuffer と FloatBuffer 、および LongBuffer<<2と DoubleBuffer に表示される場合があります。<< 3

ソースを見ると、多くの空白行もあり、フォーマットは、コードが共通のテンプレートから生成されたことを示しています。これが、生成された理由<< 0です。

于 2012-12-26T09:56:04.567 に答える
0

基本的に重複しているがixシフトが異なる他のメソッドがある場合は、メソッド間の一貫性のためにそこにある可能性があります。それ以外は、2番目に書いた方法とまったく同じです。

于 2012-12-26T09:55:16.000 に答える