在 java String source code中,很少有地方用以下注释注明:
// Note: offset or count might be near -1>>>1.
考虑以下示例:
public String(char value[], int offset, int count) {
if (offset < 0) {
throw new StringIndexOutOfBoundsException(offset);
}
if (count < 0) {
throw new StringIndexOutOfBoundsException(count);
}
// Note: offset or count might be near -1>>>1.
if (offset > value.length - count) {
throw new StringIndexOutOfBoundsException(offset + count);
}
this.offset = 0;
this.count = count;
this.value = Arrays.copyOfRange(value, offset, offset+count);
}
正如我们所见,offset
和value.length
都是count
,int
因此该值可能是 -1、0、1 或任何其他整数。评论中的“近”和“>>>”是什么意思,我在这里遗漏了什么吗?