Junior — Middle
Care este diferența dintre tipurile de date Single și Observable în biblioteca RxJava?
sobes.tech AI
Răspuns de la AI
În RxJava, tipurile Single și Observable diferă în ceea ce privește numărul și natura elementelor emise:
-
Observable poate emite orice număr de elemente (0, 1 sau multe), și se poate încheia cu succes sau cu o eroare. Este potrivit pentru fluxuri de date în care se așteaptă mai multe valori în timp.
-
Single garantează emiterea a exact un element sau o eroare. Este util pentru operații care returnează un rezultat unic, cum ar fi o solicitare către rețea sau bază de date.
Exemplu de utilizare a Single:
Single<String> single = Single.just("Salut");
single.subscribe(
item -> System.out.println("Primite: " + item),
error -> System.err.println("Eroare: " + error)
);
Observable poate arăta astfel:
Observable<Integer> observable = Observable.just(1, 2, 3);
observable.subscribe(
item -> System.out.println("Primite: " + item),
error -> System.err.println("Eroare: " + error),
() -> System.out.println("Finalizat")
);