删除android中链接列表的链接列表

时间:2015-01-26 13:38:15

标签: java android linked-list garbage-collection

我正在编写一个Android应用程序,其中包含一些小型链接列表的链接列表(每个可能有3个,每个1000个对象)。

我想选择一个内存管理策略,因为我经常需要删除和重建它们(因为数据是相互依赖的,它比修改状态更容易。)

我不知道我是否可以依赖DDMS工具,这些工具只适用于调试模式,适用于如此小的列表。

当删除其中一个时,我想知道通常的做法是清除它(希望GC清除子列表)或者我是否必须自己访问整个结构。

换句话说,我应该

LinkedList<LinkedList<MyObject>> theList = getTheList();

void free(){
    theList.clear();
}

void free(){
    LinkedList<MyObject> subList;
    for(subList:theList) subList.clear();
    theList.clear();
}

2 个答案:

答案 0 :(得分:1)

一旦未引用List元素,垃圾收集器将自动清除它们。你的第一个提案就足够了。

答案 1 :(得分:0)

这不是c ++。在java中很常见,如果你没有任何其他引用,GC将删除这些对象,并且将来不会使用它们。我会保持简单明了。

换句话说,如果你想加速你的程序,在重新创建这个结构时使用较少的new运算符,我建议使用对象池并重用创建的对象。