我试图遍历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/

10-14 09:41