Rx java RxJava将对象与列表合并/合并

Rx java RxJava将对象与列表合并/合并,rx-java,Rx Java,我有两个可观察对象,一个返回1个元素,另一个返回多个元素。 我的目标是在不阻塞的情况下将它们合并到一起,以构建如下对象: class Combined { Server server; List<Client> client; } Observable<Server> server = getServerById("1"); //returns an observable of 1 server Observable<Client> clie

我有两个可观察对象,一个返回1个元素,另一个返回多个元素。 我的目标是在不阻塞的情况下将它们合并到一起,以构建如下对象:

class Combined {
    Server server;
    List<Client> client;
}

Observable<Server> server = getServerById("1"); //returns an observable of 1 server
Observable<Client> clients = getClientsByServerId("1"); //returns an observable of 0 to n clients

Observable<Combined> combined = //...
类组合{
服务器;
客户名单;
}
可观察服务器=getServerById(“1”)//返回1个服务器的可观察值
可观察的客户端=getClientsByServerId(“1”)//返回0到n个客户端的可观察值
可观测组合=/。。。

我尝试了zip、merge和combine,它们似乎都不是解决方案。

zip
应该可以工作,前提是
getClientsByServerId
是有限的:

Single=Single.zip(
server.singleOrError(),
clients.toList(),
(svr,列表)->新组合(svr,列表)
)

为什么不
可观察。只是(新组合的(s,ListofClient))
?我没有(s)和(ListofClient)。为了简化,我写了这篇文章,但实际上它们都是数据库调用。我已经更新了这个问题,以避免混淆您所说的省略阻塞是什么意思?这意味着服务器或客户端在
组合的
对象中可以为null?您可以添加您要查找的结果吗?