所以我有这段代码:
for(Runnable loadTask : mMeshLoadMap.values())
{
if(loadTask != null)
{
loadTask.run();
loadTask = null;
}
}
我的问题是
loadTask = null
语句从不执行,Android Studio表示“从未使用分配给loadTask的值“ null”” ...另外,当我在该行上设置断点时,调试器将永远无法到达断点。
它可以达到
loadTask.run()
,但不能达到loadTask = null
而且我敢肯定
loadTask.run()
不会阻塞太长时间 最佳答案
当然可以分配它,但毫无意义。您只需要使名为loadTask
的引用为空(该引用超出了该块的范围)。您无法更新数组中的引用。 The For-Each Loop说(部分)
for-each循环隐藏了迭代器,因此您无法调用remove。因此,for-each循环不可用于过滤。同样,它不适用于循环时需要循环遍历的列表或数组中的元素。