RxJava - Có thể quan sát một lần
Lớp Đơn đại diện cho phản hồi giá trị đơn. Có thể quan sát đơn lẻ chỉ có thể phát ra một giá trị thành công duy nhất hoặc một lỗi. Nó không phát ra sự kiện onComplete.
Khai báo lớp học
Sau đây là khai báo cho io.reactivex.Single<T> lớp học -
public abstract class Single<T>
extends Object
implements SingleSource<T>
Giao thức
Sau đây là giao thức tuần tự mà Single Observable hoạt động:
onSubscribe (onSuccess | onError)?
Ví dụ đơn
Tạo chương trình Java sau đây bằng cách sử dụng bất kỳ trình soạn thảo nào bạn chọn trong C: \> RxJava.
ObservableTester.java
import java.util.concurrent.TimeUnit;
import io.reactivex.Single;
import io.reactivex.disposables.Disposable;
import io.reactivex.observers.DisposableSingleObserver;
import io.reactivex.schedulers.Schedulers;
public class ObservableTester {
public static void main(String[] args) throws InterruptedException {
//Create the observable
Single<String> testSingle = Single.just("Hello World");
//Create an observer
Disposable disposable = testSingle
.delay(2, TimeUnit.SECONDS, Schedulers.io())
.subscribeWith(
new DisposableSingleObserver<String>() {
@Override
public void onError(Throwable e) {
e.printStackTrace();
}
@Override
public void onSuccess(String value) {
System.out.println(value);
}
});
Thread.sleep(3000);
//start observing
disposable.dispose();
}
}
Xác minh kết quả
Biên dịch lớp bằng cách sử dụng javac trình biên dịch như sau -
C:\RxJava>javac ObservableTester.java
Bây giờ hãy chạy ObservableTester như sau:
C:\RxJava>java ObservableTester
Nó sẽ tạo ra kết quả sau:
Hello World