为了账号安全,请及时绑定邮箱和手机立即绑定

java的Stringbuilder 类中newCapacity <0 的情况

java的Stringbuilder 类中newCapacity <0 的情况

PIPIONE 2019-02-22 01:43:20
在阅读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 呢,实在是想不明白啊。
查看完整描述

1 回答

?
尚方宝剑之说

TA贡献1788条经验 获得超4个赞

超过int的最大值2147483647

查看完整回答
反对 回复 2019-03-01
  • 1 回答
  • 0 关注
  • 519 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信