0

SparseArray当整数键是资源 ID 时,是否建议使用 a ?还是针对数字较小的键?

是的,我知道 的定义SparseArray,当使用整数键时,编译器总是会发出警告ArrayList,建议使用SparseArray.
但也许在SparseArray定义时,他们想到了一个数组,其中你确实有元素,但不是全部。
就我而言,我想使用资源 ID 作为键,对于那些对生成的R.java文件有选择的人来说,它们只是非常大的数字。所以我认为它可能不适合,不仅是意图,而且是SparseArray.

4

3 回答 3

1

在 R.java 中,资源 ID 都是整数,因此使用稀疏数组没有问题。

于 2013-05-26T07:22:37.770 回答
1

SparseArray 恰好适用于未知范围的值。所以它似乎符合你的需要。

于 2013-05-26T07:03:55.323 回答
0

不要将SparseArray与资源 ID 一起用作键。SparseArray以升序对键进行排序以实现高效访问。由于资源 ID 是自动生成的,因此您无法保证它们在SparseArray. 这意味着当您迭代 时SparseArray,您将不会遵循与填写 FW 时相同的顺序。

我认为您应该改用 LinkedHashMap 。

于 2020-08-20T12:12:51.280 回答