RxAndroid操作符(四)
来源:互联网 发布:移动数据被禁用怎么开 编辑:程序博客网 时间:2024/06/06 14:22
RxAndroid操作符就是
对集合的操作
1.RxAndroid接收一个集合对象,对其中数据一个一个观察
//创建一个集合,并装上数据List<Integer> integers = Arrays.asList(1,2,3,4,5);//创建被观察者,注意:这里不要用成java包下的,而是要用rx包下的类//参数是一个集合,使用这种方式,会根据集合的数量调用对应次数的subscriber.onNext方法,把集合中的数据一个一个输出Observable.from(integers)
//被观察者一创建就指定了观察者,如此就不用在后面进行注册绑定了//如果用不到onError,onCompleted方法,就创建Action1 ,其中的call == onNext.subscribe(newAction1<Integer>() {
@Overridepublic voidcall(Integer integer) {System.out.println("onNext : " + integer);
}
});
2.RxAndroid接收一个集合对象,对整个集合进行操作
//创建一个集合,并装上数据List<Integer> integers = Arrays.asList(1,2,3,4,5);//创建被观察者,注意:这里不要用成java包下的,而是要用rx包下的类//参数是一个集合,使用这种方式,会把这个集合整个输出一次Observable.just(integers)//被观察者一创建就指定了观察者,如此就不用在后面进行注册绑定了
//如果用不到onError,onCompleted方法,就创建Action1 ,其中的call == onNext.subscribe(newAction1<List<Integer>>() {@Overridepublic voidcall(List<Integer> integers) {System.out.println(integers);}
});
3.RxAndroid接收一个集合对象,对其中数据进行过滤
//创建一个集合,并装上数据List<Integer> integers = Arrays.asList(1,2,3,4,5);//创建被观察者,注意:这里不要用成java包下的,而是要用rx包下的类//参数是一个集合,使用这种方式,会根据集合的数量调用对应次数的subscriber.onNext方法,把集合中的数据一个一个输出Observable.from(integers)
//对集合数据进行过滤,只发送符合条件的事件.filter(newFunc1<Integer, Boolean>() {@OverridepublicBoolean call(Integer integer) {returninteger <4;}})//如果用不到onError,onCompleted方法,就创建Action1 ,其中的call == onNext.subscribe(newAction1<Integer>() {@Overridepublic voidcall(Integer integer) {System.out.println("onNext : " + integer);}
});
4.RxAndroid接收一个集合对象,对其中数据进行转换
//创建一个集合,并装上数据List<Integer> integers = Arrays.asList(1,2,3,4,5);//创建被观察者,注意:这里不要用成java包下的,而是要用rx包下的类//参数是一个集合,使用这种方式,会根据集合的数量调用对应次数的subscriber.onNext方法,把集合中的数据一个一个输出Observable.from(integers)
//对集合数据进行转换,参数 1.代表了原数据类型(转换前) 2.代表了要转换最终结果的数据类型(转换后)//提示:可以把流转换成bitmap,文件,String...把String字符串或数据库Cursor转换为Bean类等.map(newFunc1<Integer, String>() {@OverridepublicString call(Integer integer) {returninteger.toString();}})//如果用不到onError,onCompleted方法,就创建Action1 ,其中的call == onNext.subscribe(newAction1<String>() {
@Overridepublic voidcall(String s) {System.out.println(s);}
});
5.RxAndroid把拿到的数个集合,进行拆分观察
//创建一个集合,并装上数据List<Integer> integers = Arrays.asList(1,2, 3, 4, 5);List<Integer> integers1 = Arrays.asList(6,7, 8);List<Integer> integers2 = Arrays.asList(9,10);//创建被观察者,注意:这里不要用成java包下的,而是要用rx包下的类//参数是一个集合,使用这种方式,会把这个集合整个输出一次Observable.just(integers, integers1, integers2)//这里会输出3次,但经过修改要他发送10次
//这样使用,以后可以减少双层for循环.flatMap(new Func1<List<Integer>, Observable<?>>() {
//将一个数据再转变为一个观察者@Overridepublic Observable<?> call(List<Integer> integers) {returnObservable.from(integers);}
})/* .subscribe(new Action1<List<Integer>>() {
@Overridepublic void call(List<Integer> integers) {System.out.println(integers);}
});*/.subscribe(new Action1<Object>() {
@Overridepublic void call(Object o) {System.out.println(o);}
});
阅读全文
0 0
- RxAndroid操作符(四)
- RxAndroid从零开始学之四(常见操作符)
- RxJava与RxAndroid 操作符
- RxAndroid 操作符使用<一>
- RxJava 和 RxAndroid 二(操作符的使用)
- RxJava 和 RxAndroid (操作符的使用)
- RxJava 和 RxAndroid 二(操作符的使用)
- RxJava 和 RxAndroid 二(操作符的使用)
- RxJava 和 RxAndroid 二(操作符的使用)
- RxJava 和 RxAndroid 二(操作符的使用)
- Android——深入浅出RxJava 和RxAndroid(操作符)
- Rxjava,rxandroid中的操作符的作用
- RxAndroid 应用(四)(简易天气App之RxBus)
- RxJava 和 RxAndroid 四(RxBinding的使用)
- RxJava 和 RxAndroid 四(RxBinding的使用)
- RxJava 和 RxAndroid 四(RxBinding的使用)
- RxJava 和 RxAndroid 四(RxBinding的使用)
- RxJava 和 RxAndroid 四(RxBinding的使用)
- hihocoder 1014 Trie树
- 最大似然估计 (MLE)与 最大后验概率(MAP)在机器学习中的应用
- 十周 项目1(4)
- Hibernate入门(二)
- JS获取元素样式
- RxAndroid操作符(四)
- 设计模式
- 第一次 博客 我决定写的 认(fu)真(yan)点
- 十 项目1(3)
- [DeeplearningAI笔记]ML strategy_2_2训练和开发/测试数据集不匹配问题
- 顺序容器操作
- 数字三角形
- Protobuf 在Ubuntu 14.04上的编译与使用
- RxAndroid线程调度器(五)