Rxjava练习册(一)

准备工作 http://www.jianshu.com/p/1ac62d93b962

Observer的创建

static Observer<Integer> observer = new Observer<Integer>() {
    @Override
    public void onCompleted() {
        System.out.println("onCompleted");
    }
    @Override 
   public void onError(Throwable e) {
        System.out.println("onError");
    } 
   @Override
    public void onNext(Integer integer) {
        System.out.println(integer);
}};

Observable的创建

Observable.create(), Observable.just(),Observable.from();
create方法需要一个Observable.OnSubscribe对象
just方法是将一个(或多个,最多9个)普通对象转换成一个Observable对象
from方法是将一个列表转换成一个Observable对象
用代码说话吧

create:
static Observable.OnSubscribe<Integer> onsubscribe = new Observable.OnSubscribe<Integer>() {
    @Override
    public void call(Subscriber<? super Integer> subscriber) {
        subscriber.onNext(1);
        subscriber.onError(new Exception());
        subscriber.onCompleted();
        subscriber.onError(new Exception());
        subscriber.onNext(2);
}};
  • onCompleted和onError方法不会同时被调用,两者都会结束链式调用
  • onCompleted或onError方法之后的方法将不会被调用
    测试:
    static void create(){
    Observable.create(onSubscribe).subscribe(integerObserver);
    }
    public static void main(String args[]) {
    create();
    }


    屏幕快照 2016-01-23 下午4.01.10.png
just:

just方法最多可以接受10个参数
static void just(){
Observable.just(1).subscribe(integerObserver);
}
static void just2(){
Observable.just(1,2).subscribe(integerObserver);
}

  • 如果是不同的类型just就会自动向上转型,转型失败将不能通过编译
屏幕快照 2016-01-23 下午4.21.32.png
from:

from是将一集合(from还有其它的创建方法,这里我只练习集合)转化成一个Observable

  static void from(){
      Integer arr[] = {1,2,3,4 };
      Observable.from(arr).subscribe(integerObserver);
  }
  static void from2(){
      Integer arr[] = {1,2,3,4 };
      Observable.from(Arrays.asList(arr)).subscribe(integerObserver);
  }
屏幕快照 2016-01-23 下午4.30.38.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 注:只包含标准包中的操作符,用于个人学习及备忘参考博客:http://blog.csdn.net/maplejaw...
    小白要超神阅读 2,230评论 2 8
  • 我从去年开始使用 RxJava ,到现在一年多了。今年加入了 Flipboard 后,看到 Flipboard 的...
    Jason_andy阅读 5,570评论 7 62
  • 版权声明:本文为小斑马伟原创文章,转载请注明出处! 上篇简单的阐述了响应式编程的基本理论。这篇主要对响应编程进行详...
    ZebraWei阅读 2,528评论 0 2
  • 前言我从去年开始使用 RxJava ,到现在一年多了。今年加入了 Flipboard 后,看到 Flipboard...
    占导zqq阅读 9,202评论 6 151
  • 中午吃过饭从店里出来,门口蹲坐着一只黄毛小狗,直身看着每个从店里出来的人,然后目送他们离去。我出门,它昂着头看我,...
    冬东122阅读 257评论 0 0