remove函数中的data[size]=null
来源:2-6 使用泛型
weibo_新的旅涂_0
2018-07-30
在Array中的remove函数中,
for(int i = index + 1 ; i < size ; i ++)
data[i - 1] = data[i];
data[size] = null; // loitering objects != memory leak,当循环执行到最后一次的时候,是data[size-1-1]=data[size-1],和data[size]没有关系。data[size]不是一直也没有元素嘛,有了不就越界了嘛,所以不太理解这个代码逻辑,麻烦老师讲解一下,谢谢了~
写回答
1回答
-
第100行,首先进行了size --。所以,在101行,size已经是原来的size - 1了。此时data[size]指向原数组的最后一个元素:)
012018-07-30
相似问题