【发布时间】:2014-07-02 20:46:28
【问题描述】:
所以基本上我在List 有一个必须删除的位置数组。我们都知道我们不能使用for循环,因为一旦你删除了第一个,其余项目的位置就会更新,所以解决方案是使用Iterator
我的SparseBooleanArray 具有列表中位置的键和 **value(布尔值)来指示是否应将其删除。
如何删除它们?
编辑:
// list is a List
list.get(0) // first element
list.get(1) // second element
list.get(2) // third element
// sba is a SparseBooleanArray
// the first element of the sea indicates that the list.get(1) should be deleted
sba.keyAt(0) // = 1
sba.valueAt(0) // = true
【问题讨论】:
-
你可以使用for循环,你只需要在删除元素时调整递增变量
-
我假设有问题的语言是 Java...?
-
您可能会提供一些代码,以便其他人可以更清楚地了解您迄今为止所尝试的内容
-
是的,语言是java。还更新以提供更直观的解释。我实际上是在尝试删除 android 上的上下文操作栏上的选定项目,但找不到如何做到这一点。其他帖子只是说如何获取检查的项目,所以这就是我卡住的地方
-
查看
docs(developer.android.com/reference/android/util/…),看起来SparseBooleanArrays 有一个delete方法,它采用key值,并删除该位置的值。