DefaultCache 320行代码
public Object[] toArray() {
Object[] array = new Object[size()];
Iterator it = iterator();
int i = 0;
while (it.hasNext()) {
array[i] = it.next();
}
return array;
}这里的array[i]的i没有变动应该一直是0,应该变为i++
本文介绍了一个DefaultCache320行代码中的toArray方法存在的bug:数组元素赋值索引未递增,导致所有元素都被最后一个迭代元素覆盖。文章提供了正确的实现方式,即将array[i]=it.next();之后加入i++确保每次循环正确更新数组。
989

被折叠的 条评论
为什么被折叠?



