本文介绍了无法解析 rxjava 2 中的 Observable.from 方法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
rxjava 1 中的 Observable 类中有一个 from 方法,但在 rxjava 2 中找不到.如何在以下代码中替换 rxjava 2 中的 from 方法:
There is a from method in the Observable class in rxjava 1 but not found in rxjava 2. How can I replace the from method in rxjava 2 in the following code:
List<Integer> ints = new ArrayList<>();
for (int i=1; i<10; i++) {
ints.add(new Integer(i));
}
Observable.just(ints)
.flatMap(new Function<List<Integer>, Observable<Integer>>() {
@Override
public Observable<Integer> apply(List<Integer> ints) {
return Observable.from(ints);
}
})
推荐答案
你可以使用 Observable.fromIterable(source)
来自文档:
一些运算符重载已用后缀重命名,例如fromArray、fromIterable 等.原因是当库是用 Java 8 编译的,javac 经常无法消除歧义功能接口类型之间.
List<Integer> ints = new ArrayList<>();
for (int i=1; i<10; i++) {
ints.add(new Integer(i));
}
Observable.just(ints)
.flatMap(new Function<List<Integer>, Observable<Integer>>() {
@Override
public Observable<Integer> apply(List<Integer> ints) {
return Observable.fromIterable(ints);
}
})
这篇关于无法解析 rxjava 2 中的 Observable.from 方法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!