Rx操作符
2024-08-21 02:20:08
【Rx操作符】
1、Observable.from()方法,它接收一个集合作为输入,然后每次输出一个元素给subscriber:
Observable.from("url1", "url2", "url3")
.subscribe(url -> System.out.println(url));
2、Observable.flatMap()接收一个Observable的输出作为输入,同时输出另外一个Observable。直接看代码:
query("Hello, world!")
.flatMap(new Func1<List<String>, Observable<String>>() {
@Override
public Observable<String> call(List<String> urls) {
return Observable.from(urls);
}
})
.subscribe(url -> System.out.println(url));
3、getTitle()返回null如果url不存在。我们不想输出"null",那么我们可以从返回的title列表中过滤掉null值!
query("Hello, world!")
.flatMap(urls -> Observable.from(urls))
.flatMap(url -> getTitle(url))
.filter(title -> title != null)
.subscribe(title -> System.out.println(title));
4、take()输出最多指定数量的结果。
doOnNext()允许我们在每次输出一个元素之前做一些额外的事情,比如这里的保存标题。
query("Hello, world!")
.flatMap(urls -> Observable.from(urls))
.flatMap(url -> getTitle(url))
.filter(title -> title != null)
.take()
.doOnNext(title -> saveTitle(title))
.subscribe(title -> System.out.println(title));
参考:http://blog.csdn.net/lzyzsd/article/details/44094895
最新文章
- Linux From Scratch(从零开始构建Linux系统,简称LFS)- Version 7.7(一)
- html生成图片并保存到本地方法(Windows)
- [c++] Pieces of knowledge
- 学习Python的三种境界
- ThinkPHP 修改,删除数据,全部显示
- [原创]java WEB学习笔记48:其他的Servlet 监听器:域对象中属性的变更的事件监听器 (3 个),感知 Session 绑定的事件监听器(2个)
- ASP.NET MVC 开源项目学习之ProDinner (二)
- eclipse怎么集成配置JDK和Tomcat
- OC语言-01类和对象
- Unity加载本地图片的2种方式
- mysql命令[转]
- HTML5 Canvas:初始Canvas
- Spring Cloud中关于Feign的常见问题总结
- BZOJ3490 : Pa2011 Laser Pool
- Selenium如何在谷歌浏览器模拟H5页面
- python拼接变量、字符串的3种方法
- js 正则常用函数 会正则得永生
- 利用koa打造restful API
- 蓝牙inquiry流程之命令下发
- Python概念-Attr系列(林海峰教的)