RxJava2 按 Id 将对象分组到 HaspMap 并对它们进行排序

RxJava2 Group Objects by Id to HaspMap and sort them

我有 Observable returns

List<Item>

每个项目都有

long groupId
long dateMillis

我想将该列表分组到

HashMap<groupId, <List<Item>>

每个地图条目中的项目按 dateMillis 排序。

谁能帮我做一下?提前致谢!

你可以这样做:

    Observable<List<Item>> listObservable;
    listObservable.flatMap(Observable::from)
            .toSortedList((item, item2) -> Long.compare(item.dateMillis, item2.dateMillis))
            .flatMap(Observable::from)
            .subscribe(item -> addToHashMap(item));

排序列表,然后将项目添加到地图。