RXAndroid

1.基本模式

1)创建观察者observer

Observer<String> observer = new Observer<String>() {
            @Override
            public void onSubscribe(@NonNull Disposable d) {
                
            }


            @Override
            public void onNext(@NonNull String s) {
                Log.d("log",s);
            }


            @Override
            public void onError(@NonNull Throwable e) {


            }


            @Override
            public void onComplete() {


            }
        };

2)创建被观察着observable 

Observable<String> observable = Observable.create(new ObservableOnSubscribe<String>() {
            @Override
            public void subscribe(@NonNull ObservableEmitter<String> e) throws Exception {
                e.onNext("coco");
                e.onNext("cole");
            }
        });

3)建立订阅关系subscribe()

observable.subscribe(observer);


2.异步控制

observable.subscribeOn(Schedulers.io())
                .observeOn(AndroidSchedulers.mainThread())
                .subscribe(observer);


subscribeOn:发布线程 onSubscribe()方法所在线程

observeOn:回调线程 onNext()方法所在线程


3.操作符

1) map  对象转换

ex.将文件路径转成文件输出

observable.map(new Function<String, File>() {
            @Override
            public File apply(@NonNull String s) throws Exception {
                return new File(s);
            }
        });

2) filter 筛选

ex.筛选出文件名包含cococola的文件

observable.filter(new Predicate<String>() {
            @Override
            public boolean test(@NonNull String s) throws Exception {

//该项return true 为显示,false为不显示
                return "cococola".equals(s);
            };

3) 等等等等   

4) 操作符需连起来写


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值