Java 如何从多个json api获取数据

Java 如何从多个json api获取数据,java,android,kotlin,Java,Android,Kotlin,我有不止一个json api,例如api1、api2和api3 它们的结构各不相同, 我想从这三个api中获取数据,并将它们合并到一个回收器视图中,我搜索了这些主题,但找不到任何有用的教程。我已经在使用改型从一个api中获取数据,我是否应该使用rxjava with E改型来做我想做的事情以及如何做的事情。我猜您正在寻找zip方法。它基本上需要许多可观察的对象,等待它们的项(所有项)到达,然后合并它们 因此,您基本上可以在一个可观察对象中执行每个API调用,无论它们返回什么,您都会得到它们,并对

我有不止一个json api,例如api1、api2和api3 它们的结构各不相同,
我想从这三个api中获取数据,并将它们合并到一个回收器视图中,我搜索了这些主题,但找不到任何有用的教程。我已经在使用改型从一个api中获取数据,我是否应该使用rxjava with E改型来做我想做的事情以及如何做的事情。

我猜您正在寻找
zip
方法。它基本上需要许多可观察的对象,等待它们的项(所有项)到达,然后合并它们

因此,您基本上可以在一个可观察对象中执行每个API调用,无论它们返回什么,您都会得到它们,并对它们执行任何您想要的操作,以便准备将它们包含在您的recyclerview中,最后,当整个操作成功时,您将填充您的recyclerview

Observable obs1 = Observable.fromCallable(// Callable 1);
Observable obs2 = Observable.fromCallable(// Callable 2);
Observable obs3 = Observable.fromCallable(// Callable 3);

Observable.zip(obs1, obs2, obs3, (o1, o2, o3) -> // something)
        .subscribeOn(Schedulers.io())
        .observeOn(AndroidSchedulers.mainThread())
        .subscribe(o -> {
               // on success
        });

您到底希望如何重新组合json?您可以选择单个数据:new_json={name:api1.name,title:api2.title},或者将它们组合起来:new_json={json_api1,json_api2}