ANDROID_LIVE Telegram 784
​​GroupingBy vs groupBy
#kotlin

В Kotlin есть целый набор операторов для работы с коллекциями. Одни из самых распространённых — groupBy, который возвращает Map<K, List<V>>, где V — элемент исходной коллекции, а K — ключ, по которому мы группируем нашу коллекцию.

Например, если мы хотим сгруппировать пользователей по идентификатору, который имеет тип String, то на выходе мы получим Map<String, List<User>>. Иначе говоря, мы превращаем нашу изначальную коллекцию в несколько меньших, сгруппированных по определённому признаку.

Это крутой метод, но не многие знают про groupingBy, который может быть полезен для задач, где особенно важна производительность, ведь он не создаёт промежуточный список для каждой маленькой коллекции. Вместо этого метод возвращает объект Grouping, который по сути является обёрткой над Iterator.

В нём гораздо меньше функции, однако, если вам очень важна производительность, подобный метод может помочь. Ну и просто будете знать, что существует такая альтернатива, вдруг пригодится на собеседовании. 😁

Подробнее о кейсах и о том, как его использовать можно почитать тут.



tgoop.com/android_live/784
Create:
Last Update:

​​GroupingBy vs groupBy
#kotlin

В Kotlin есть целый набор операторов для работы с коллекциями. Одни из самых распространённых — groupBy, который возвращает Map<K, List<V>>, где V — элемент исходной коллекции, а K — ключ, по которому мы группируем нашу коллекцию.

Например, если мы хотим сгруппировать пользователей по идентификатору, который имеет тип String, то на выходе мы получим Map<String, List<User>>. Иначе говоря, мы превращаем нашу изначальную коллекцию в несколько меньших, сгруппированных по определённому признаку.

Это крутой метод, но не многие знают про groupingBy, который может быть полезен для задач, где особенно важна производительность, ведь он не создаёт промежуточный список для каждой маленькой коллекции. Вместо этого метод возвращает объект Grouping, который по сути является обёрткой над Iterator.

В нём гораздо меньше функции, однако, если вам очень важна производительность, подобный метод может помочь. Ну и просто будете знать, что существует такая альтернатива, вдруг пригодится на собеседовании. 😁

Подробнее о кейсах и о том, как его использовать можно почитать тут.

BY Android Live 🤖




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

View MORE
Open in Telegram


Telegram News

Date: |

Concise Select “New Channel” Members can post their voice notes of themselves screaming. Interestingly, the group doesn’t allow to post anything else which might lead to an instant ban. As of now, there are more than 330 members in the group. Invite up to 200 users from your contacts to join your channel How to create a business channel on Telegram? (Tutorial)
from us


Telegram Android Live 🤖
FROM American