Kotlin Перебрать список списков
Допустим, у нас есть List<User>
и у каждого пользователя есть List<Movies>
из всех фильмов, которые смотрели пользователи.
Что если мы хотим получить комбинацию идентификатора пользователя и всех просматриваемых видеороликов в жанрах типа "драма", как мы могли бы сделать это без создания временного изменяемого Списка? Есть ли оператор для перебора списка списков и получения этих данных?
1 ответ
Решение
Насколько я понимаю, ваше решение должно выглядеть так:
users.map { user ->
user.id to user.movies
.filter { movie -> movie.genre == Genre.DRAMA }
}
.forEach { (userId, dramas) ->
//do whatever you want with combinations
}
Это приводит к комбинации идентификатора пользователя и всех драм, которые просмотрел пользователь. Для более точного ответа, пожалуйста, добавьте свой User
а также Movies
классы