我试图遍历SparseArray并删除一些项。
私人Sparsearray记录;
int size = record.size();
for (int index = 0; index < size; index++) {
if (record.valueAt(index) < threshold){
record.delete(record.keyAt(index));
}
}
但是如果我在迭代的中途删除了项,那么大小就会改变,所以我不能使用它。
我试图事先克隆稀疏数组。但日食给了我错误
The method clone() from the type object is not visible
但无论是api文档还是sparsearray的源代码都表明它是公开的。
方法克隆还有一个注释
@SuppressWarnings("unchecked")
抑制会改变方法的可见性吗?
有人知道怎么解决这个问题或者克隆斯巴瑟雷吗?
最佳答案
根据Android API changes for SDK 14,我们发现SparseArray
was modified to include a public
clone
。
编辑
在我的项目中,我为sb数组实现了自己的克隆代码:Source code here
关于java - Android中的SparseArray克隆,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12153921/