有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java RxJava无重复合并

我对RxJava有点陌生,我正在尝试实现搜索本地数据库和服务器的搜索功能。我想它合并两个结果,并消除重复,任何想法


共 (2) 个答案

  1. # 1 楼答案

    您可以合并本地和远程结果,并使用toMap消除重复项

    此外,如果您有更多的需求,可以使用collectHashSet(或HashMap),这会给您更多的控制:

        Observable<Integer> local = Observable.just(1, 2, 3, 4);
        Observable<Integer> remote = Observable.just(1, 3, 5, 7);
        local.mergeWith(remote)
                .collect(() -> new HashSet<Integer>(), (set, v) -> set.add(v))
                .flatMap(Observable::from)
                .subscribe(System.out::println);