Я использую RxJava / Kotlin Observable#take()
, чтобы получить первые 50 элементов из списка.Но оператор #take()
ведет себя не так, как следует в соответствии с документами Rx.
В документах Rx #take()
определяется как:
"Излучать только первые n элементов, излучаемых наблюдаемой" *
У меня есть такая функция:
Как мы видим, аргумент pageSize
равен 50
И начальное size
из list
равно 300
После этого #take(50)
равноприменяется к этому Observable
и на следующей точке останова я все еще получаю полный размер список i.e. size = 300
Но just for the check
, если что-то не так с отладчиком или наблюдаемым, я пытался взять только элементы, displayName которых содержит «9», но на этот раз я получаю ожидаемый результат smaller list
с 9
в каждом из #displayName field
.
Я считаю, что оператор RxJava/Kotlin's #take()
не такой уж и сумасшедший, а только я.