[英]RxJava: Can a result be split into two different observables?
I have an observable that emits a single object which has two fields, something like this: 我有一个observable,它发出一个有两个字段的对象,如下所示:
public class Details {
private Link link;
private List<Comment> comments;
}
Observable<Details> detailsObservable = ...;
Now, I was wondering: can this observable be somehow split into two observables? 现在,我想知道:这个可观察的是否可以分成两个可观察者? What I'd like to do is to have a subscriber listen for the
link
and another one to listen for Comment
s. 我想做的是让订阅者听取
link
,另一个听取Comment
。
You can use map method to achieve that. 您可以使用map方法来实现这一点。 Example code shared below, let me know if it helps.
下面分享的示例代码,让我知道它是否有帮助。
public static void main(String[] args) {
Observable<Details> dObs = Observable.just(new Details("a", "c"));
Observable<String> lObs = dObs.map(d -> d.link);
Observable<String> cObs = dObs.map(d -> d.comments);
lObs.subscribe(s -> System.out.println(s));
cObs.subscribe(s -> System.out.println(s));
}
static class Details {
String link;
String comments;
public Details(String link, String comments) {
this.link = link;
this.comments = comments;
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.