前言:Rxjava2,想想写个基础的方法使用小结
1、just
io.reactivex.Observable.just("1", "2")
.subscribe(new Consumer<String>() {
@Override
public void accept(String strings) throws Exception {
}
});
just用来依次发送数据,用法可以参考上面的代码,但是注意 just()里参数是一串数据,但是不能单独写个变量,只能在参数里写,否则返回的数据还是原来的数组,即:
String[] nn = {"1", "2"};
io.reactivex.Observable.just(nn)
.subscribe(new Consumer<String[]>() {
@Override
public void accept(String[] strings) throws Exception {
}
});
2、zip
Observable.zip(new Observable<String>() {
@Override
protected void subscribeActual(Observer<? super String> observer) {
}
}, new Observable<Integer>() {
@Override
protected void subscribeActual(Observer<? super Integer> observer) {
}
}, new BiFunction<String, Integer, String>() {
@Override
public String apply(String s, Integer integer) throws Exception {
return s + integer;
}
}).subscribe(new Consumer<String>() {
@Override
public void accept(String s) throws Exception {
}
});
多个事件组合合并方法,两两对应,多余的方法舍弃。BiFunction 这个参数就是合并后的回调,泛型前面是对应合并事件的泛型,最后一个是返回的数据类型。
3、map
Observable.create(new ObservableOnSubscribe<String>() {
@Override
public void subscribe(ObservableEmitter<String> e) throws Exception {
e.onNext("1");
}
}).map(new Function<String, Integer>() {
@Override
public Integer apply(String s) throws Exception {