Keluarga SpareArray: SparseArray (int), LongSparseArray merupakan HashMap dengan key-nya native: int, long. Kelebihan sparsearray dibandingkan dengan HashMap adalah tidak adanya prosess boxing-unboxing dari dan ke native variable
misal:
HashMap<int,String> map1 = new HashMap<int,String>()
map1.put(1,"satu");
String value = map1.get(1);
yang sebenarnyanya terjadi adalah sebagai berikut:
map1.put(new Integer(1),"satu");
String value = map1.get(new Integer(1));
nah disana ada proses boxing/unboxing dari int ke Integer, nah dengan menggunakan SpareArray prosess boxing/unboxing itu tidak ada karena key-nya sudah tersimpan dalan native variable
SparseArray<String> map2 = SparseArray<String>();
map2.put(1,"satu");
String value = map2.get(1);
Perlu diketahui proses pembuatan class itu prosses yang berat karena disana bisa memanggil System.gc()
Disamping itu ada beberapa feature tambahan dari sparsearray:
1. keyAt(int index), mendapatkan key pada index tertentu
2. valueAt(int index), mendapatkan value pada index tertentu
3. indexOfKey(int key), index dari key
4. indexOfValue(E value), index dari value
No comments:
Post a Comment