- 博客(2)
- 收藏
- 关注
原创 对ArrayList数组自动扩容的一些疑问和猜想
数组扩容的第三个判定 if (newCapacity - MAX_ARRAY_SIZE > 0) newCapacity = hugeCapacity(minCapacity);hugeCapacity()源码: private static int hugeCapacity(int minCapacity) { if (minCapacity < 0) // overflow throw new OutOfMemoryEr
2020-08-29 12:04:59
135
原创 nums[i] = nums[i]++; // 对于自增优先级的探索
问题的源头是在遍历输出的时候不小心给自增操作前加了个赋值,然后发现打印出来的数据和源数据一样,并且数组中的数据也没有改变,查不到到底怎么解决,后来在浏览别人帖子的时候,突然灵光一闪,想起了运算符优先级,一解释,果然通了。nums[i] = nums[i]++;实际上首先是赋值号右侧的自增符号先运算,即nums[i] = nums[i]+1;//此时nums[i]的元素值自增了1但是我们都知道i++这个操作虽然是自增,但是留在运算里的值依旧时原值,于是换算到这里就成了nums[i] = nums[i
2020-08-24 20:31:39
1845
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人