複数のモデル インスタンスを名前でグループ化し、take(n) を使用してグループごとに特定のアイテムのみを取得しようとしていますが、どういうわけかテイクはGroupedObservable
. ここにコードがあります
これに 10 個のアイテムのリストが含まれており、5 個が「リンゴ」という名前で、残りの 5 個が「ナシ」という名前であるとします。
Observable<Item> items....
Observable<Item> groupedItems = items.groupBy(Item::name)
.flatMap(it -> it.take(2));
したがって、groupedItemsは 2 つの「りんご」と 2 つの「梨」を放出する必要があると思いますが、代わりにそれらすべてが含まれています。
私が間違っていることがありますか、別の方法で行う必要がありますか?