在rxjava 1中的Observable类中有一个from方法但在rxjava 2中找不到.如何在以下代码中替换rxjava 2中的from方法:
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);
}
})
Run Code Online (Sandbox Code Playgroud)
Pav*_*mar 19
您可以使用 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);
}
})
Run Code Online (Sandbox Code Playgroud)
您无需使用,.just()因为您可以Observable通过fromIterable()运营商直接从列表中创建.
Observable.fromIterable(ints)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6665 次 |
| 最近记录: |