RxJava相关操作符

xiaoxiao2022-06-12  31

import rx.Observable; import rx.Subscriber; import rx.functions.Func0; import java.util.ArrayList; public class HelloWorld { public static void main(String args[]) { create(); just(); from(); defer(); } public static void create(){ Observable.create(new Observable.OnSubscribe<String>() { public void call(Subscriber<? super String> subscriber) { subscriber.onNext("this is a create method!"); } }).subscribe(new Subscriber<String>() { public void onCompleted() { System.out.println("create onCompleted() "); } public void onError(Throwable throwable) { System.out.println("onError() "); } public void onNext(String s) { System.out.println("onNext(): " + s); } }); } //just可以理解为create的简写 public static void just(){ Observable.just("this is a just method!").subscribe(new Subscriber<String>() { public void onCompleted() { System.out.println("just onCompleted() "); } public void onError(Throwable throwable) { System.out.println("onError() "); } public void onNext(String s) { System.out.println("onNext(): " + s); } }); } //from转换不同的数据类型 public static void from(){ ArrayList<String> items = new ArrayList<String>(); items.add("A"); items.add("B"); items.add("C"); Observable.from(items).subscribe(new Subscriber<String>() { public void onCompleted() { System.out.println("from onCompleted() "); } public void onError(Throwable throwable) { System.out.println("onError() "); } public void onNext(String s) { System.out.println("onNext(): " + s); } }); } //defer被订阅时才创建被观察者 public static String valuestr = null; public static void defer(){ Observable observable = Observable.defer(new Func0<Observable<String>>(){ public Observable<String> call() { return Observable.just(valuestr); } }); valuestr = "this is a defer method!"; observable.subscribe(new Subscriber<String>() { public void onCompleted() { System.out.println("defer onCompleted() "); } public void onError(Throwable throwable) { System.out.println("onError() "); } public void onNext(String s) { System.out.println("onNext(): " + s); } }); } }
转载请注明原文地址: https://www.6miu.com/read-4932714.html

最新回复(0)