在阅读java中AbstractStringBuilder类源码的时候,看到一个给数组扩容的方法
void expandCapacity(int minimumCapacity) {
int newCapacity = value.length * 2 + 2;
if (newCapacity - minimumCapacity < 0)
newCapacity = minimumCapacity;
// 不知道什么时候newCapacity 会小于0呢?
if (newCapacity < 0) {
if (minimumCapacity < 0) // overflow
throw new OutOfMemoryError();
newCapacity = Integer.MAX_VALUE;
}
value = Arrays.copyOf(value, newCapacity);
}
请问大手们 newCapacity这个什么时候会小于0 呢,实在是想不明白啊。
添加回答
举报
0/150
提交
取消