tgoop.com/android_live/599
Last Update:
Сравнение ArrayMap, SparceArray и HashMap
#theory
В Android SDK есть большой пласт коллекций, которые мы не используем: ArrayMap
, SparseArray
, ArraySet
и т.д. Но все они дают определённые преимущества в сравнении с их более популярными «братьями».
И знание того, когда какую коллекцию использовать даёт преимущество при оптимизации приложения, а также при прохождении некоторых этапов собеседования.
В статье автор детально рассказывает, как работает ArrayMap
: что будет, если добавить первый элемент, второй элемент и как разрешается коллизия.
Далее автор сравнивает эти три коллекции между собой, с точки зрения памяти и скорости доступа. Выводы:
▪️если у вас меньше 1000 элементов, то используйте ArrayMap
, так как идёт выигрыш по памяти;
▪️если ключами является целое число, то используйте SparseArray
, так как идёт ещё больший выигрыш по памяти;
▪️если значений больше 1000, то HashMap
выигрывает по скорости;
Добавлю, что плюсом у HashMap
является отсутствие привязки к Android SDK, что позволяет использовать её также и в KMM проектах.
Очень интересно изучать то, как работают коллекции изнутри и разбираться в привычных инструментах. 🔥
BY Android Live 🤖

Share with your friend now:
tgoop.com/android_live/599