Sobes.tech
Junior — Middle

Ako možno premeniť tok dát typu Observable na Single v rámci reaktívneho programovania?

sobes.tech AI

Odpoveď od AI

V reaktívnom programovaní na Android s použitím RxJava na konverziu Observable na Single môžete použiť operátory single() alebo firstOrError().

  • single() očakáva, že Observable vydá presne jeden prvok, inak vyhodí chybu.
  • firstOrError() vezme prvý prvok z Observable alebo vráti chybu, ak žiadny nie je.

Príklad:

Observable<String> observable = Observable.just("Hello");
Single<String> single = observable.singleOrError();

single.subscribe(
    item -> System.out.println("Prijaté: " + item),
    error -> System.err.println("Chyba: " + error)
);

Týmto spôsobom zabezpečíte, že tok bude obsahovať presne jeden prvok, čo zodpovedá zmluve Single.