RXJava 1.* 中的 flatmap 操作符例子
例子:
Integer[] values = {1, 2, 3, 4, 5};
List<Integer> list = Arrays.asList(values);
Observable.from(list).flatMap(new Func1<Integer, Observable<Integer>>(){
@Override
public Observable<Integer> call(Integer t) {
Integer[] nums = {t, t + t, t * t};
return Observable.from(nums);
}
}).subscribe((i) -> {System.out.println("what I get is: " + i);});
与map 操作符的主要区别是: map 只是输入一个event,返回另外一个event,flatmap 输入一个event,先返回一个Observable,然后这些返回的Observables 在merge到一个Observable 里面去