我有两个String的可观察列表。
我想使用zip或其他任何操作在rxjava中实现类似的功能。
如果list1有数据而list2没有任何数据-请考虑list1的数据集。
如果list1没有数据而list2有任何数据-请考虑list2的数据集。
如果list1和list2都具有数据,则取两个list的交集。
这不起作用->
String[] LEFT = { "1", "2", "3", "4" };
String[] RIGHT = { "5", "6", "7", "8" };
Observable<String> LEFT_Observable = Observable.fromArray(LEFT);
Observable<String> RIGHT_Observable = Observable.fromArray(RIGHT);
ArrayList<String> result = new ArrayList<String>();
System.out.println("HI");
LEFT_Observable.join(RIGHT_Observable, i -> Observable.just(i), j -> Observable.just(j), (l, r) -> {
System.out.println(l);
System.out.println(r);
result.add(l);
return l + r;
}).take(10).subscribe(System.out::println);
答案 0 :(得分:2)
我采用的方法是:
viewWillAppear
这两个流override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
setTitleColorWhite(vc: self)
}
每个值都考虑了“左”和“右”源的空值/空度merge
删除重复项所有看起来像这样:
filter
distinct
代码很难看。我想知道是否还有一种更惯用的方式来做到这一点……但是它有效。
如果没有别的,希望至少能激发一些思想!