RxJava 学习笔记二
2016-01-22 17:40
363 查看
Observable.from()
它接收一个集合作为输入,然后每次输出一个元素给subscriber:Observable.from("url1", "url2", "url3") .subscribe(url -> System.out.println(url));
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));
输入的是
List<String>,返回的是
Observable<String>
理解flatMap的关键点在于,flatMap输出的新的Observable正是我们在Subscriber想要接收的。现在Subscriber不再收到List,而是收到一些列单个的字符串,就像Observable.from()的输出一样。
filter
输入和输出相同的元素,会过滤掉那些不满足条件的query("Hello, world!") .flatMap(urls -> Observable.from(urls)) .flatMap(url -> getTitle(url)) .filter(title -> title != null) .subscribe(title -> System.out.println(title));
相关文章推荐
- java-ThreadLocal的实现
- springMVC环境搭建-4
- java volatile关键字解析
- eclipse + jni +lame
- spring+mybatis利用interceptor(plugin)兑现数据库读写分离
- spring下的文件上传、下载与删除
- mysql+spring+mybatis实现数据库读写分离
- java多线程
- 解决有java命令,没有javac命令
- Myeclipse10下搭建SSH框架(图解)Struts2.1+Spring3.0+Hibernate3.3
- Java URI 中的 getSchemeSpecificPart() 方法
- Java URI 中的 getSchemeSpecificPart() 方法
- 《实战Java高并发程序设计》问答录,看这些问题解决你所有java并行难题
- Java中的多态
- java实现ping功能的几种方法
- Java note
- JSR356标准Java WebSocket
- javascrip笔记——图片加载
- Eclipse常用快捷键
- 深入分析JavaWeb Item1 -- JavaWeb开发入门