Junior — Middle
Wat is het verschil tussen de datatypes Single en Observable in de RxJava-bibliotheek?
sobes.tech AI
Antwoord van AI
In RxJava verschillen de typen Single en Observable in de hoeveelheid en aard van de uitgezonden elementen:
-
Observable kan elk aantal elementen (0, 1 of veel) uitzenden en kan succesvol of met een fout eindigen. Het is geschikt voor datastromen waar meerdere waarden in de loop van de tijd worden verwacht.
-
Single garandeert de emissie van precies één element of een fout. Het is handig voor operaties die een enkel resultaat teruggeven, zoals een netwerk- of databasevraag.
Voorbeeld van gebruik van Single:
Single<String> single = Single.just("Hallo");
single.subscribe(
item -> System.out.println("Ontvangen: " + item),
error -> System.err.println("Fout: " + error)
);
Observable kan er zo uitzien:
Observable<Integer> observable = Observable.just(1, 2, 3);
observable.subscribe(
item -> System.out.println("Ontvangen: " + item),
error -> System.err.println("Fout: " + error),
() -> System.out.println("Voltooid")
);