Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Diferencia entre SparseArray Vs ArrayList?

Quiero saber el rendimiento y la eficiencia de SparseArray y ArrayList y cuál es mejor utilizar. ¿No puedo entender cuándo utilizar SparseArray y cuándo ArrayList ?

  • MathML y ​​Java
  • Quitar la aplicación del programa de lanzamiento mediante programación en Android
  • Cómo obtener el número de milisegundos transcurrido hasta ahora hoy
  • Desplaza la vista de cuadrícula mientras arrastra el elemento (como sombra)
  • Cómo consultar desde la base de datos realm con resultados distintos java
  • Clasificación de Android ListView
  • ¿Por qué estoy recibiendo este error "recurso esperado de tipo raw" en Android Studio?
  • Android: variable tiene un valor incorrecto en while loop
  • 2 Solutions collect form web for “Diferencia entre SparseArray Vs ArrayList?”

    El propósito de un SparseArray es ahorrar memoria si tiene una lista que tiene un montón de espacios. Si sólo tiene 10 elementos y los números que los indexan van de 0 a 1000, entonces un ArrayList tendrá un montón de entradas null en Esto, y eso será bastante derrochador. Un SparseArray utilizará estructuras de datos internamente para evitar ese problema.

    La alternativa en esta situación es un HashMap , que es mejor que un SparseArray si tiene muchos elementos.

    La implementación no pretende ser apropiada para las estructuras de datos que pueden contener un gran número de elementos. Generalmente es más lento que un HashMap tradicional, ya que las búsquedas requieren una búsqueda binaria y las adiciones y eliminaciones requieren la inserción y eliminación de entradas en la matriz. Para los contenedores que contienen hasta cientos de artículos, la diferencia de rendimiento no es significativa, menos del 50%.

    De la documentación de Android dev .

    SparseList implementa un SparseArray . Esta clase es idéntica a java.util.ArrayList , excepto que permite la asignación a índices de matriz que están más allá de la longitud actual de la lista, utilizando los métodos set() y add() esperados.

    Creo que aquí hay todo lo que necesitas saber para entender cuál usar.

    SparseList también es más eficiente

    Más información aquí

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.