如何在列表数据结构中编写 clear() 方法?
我最近阅读了一些框架源代码,并注意到他们编写了类似列表的数据结构的clear()方法。逐个删除元素。
while (_arr.length > 0 )
{
remove(_arr[0]);
}
(也许上面的看起来有点令人困惑,但这是因为这种语言本身的本机数组类型是动态数组)或
for (int i = 0; i < size; i++)
{ elementData[i] = null;}
size = 0;
但我记得我写过一些这样的代码。该列表装饰了本机数组类型,并且我已经编写了这样的clear()方法。
_arr=new Array();
_size=0;
直接实例化新的本机数组类型。
并且此代码是用具有垃圾回收的语言编写的。所以我认为所有元素最终都会被收集,那么为什么需要一个循环呢?新的会很快吗?