无法在 android 中稀疏数组的末尾添加值


直到

今天,我一直和sparseArray玩得很好。现在看起来稀疏阵列不会回报我的爱:(

我必须维护存储在sparseArray中的对象的顺序。setValueAt只有一种方法不允许设置密钥。 key对我来说很重要。

告诉我什么是解决方法?我应该破解源代码吗?或者,如果有人可以帮助使用自定义方法,我可以将其添加到我自己的自定义 sparseArray 类中,即我将MySparseArraysparseArray继承来编码以添加我的该方法。我需要在最后一个索引或sparseArray末尾添加一个具有特定键的对象。

根据keyAt的文档,我相信这应该是您添加到稀疏数组"末尾"的方式。

    SparseArray<Object> myArray = new SparseArray<Object>();
    myArray.put(myArray.keyAt(myArray.size()-1) + 1, new Object());

文档:

升序排列的索引对应的键保证 按升序排列,例如,keyAt(0) 将返回最小的键和 keyAt(size()-1) 将返回最大的键。

根据 http://developer.android.com/reference/android/util/SparseArray.html 的说法,有append(int key, E value)的方法 - 你为什么不直接使用那个?

相关内容

  • 没有找到相关文章