Junior — Middle
Mi a Single operátor feladata az RxJava-ban, és milyen helyzetekben használják?
sobes.tech MI
Válasz az MI-től
Az Single operátor RxJava-ban egy olyan áramlást képvisel, amely pontosan egy elemet vagy hibát bocsát ki. Ellentétben a normál Observable-lal, amely több elemet is kiadhat, az Single garantálja, hogy egy eredményt vagy hibát kapunk.
Cél:
- Olyan aszinkron műveletekhez használják, amelyek egyetlen értéket adnak vissza, például hálózati kérés, adatbázis olvasás vagy számítás.
Használati forgatókönyvek:
- Adatok lekérése a szerverről (pl. felhasználói profil betöltése).
- Olyan műveletek végrehajtása, ahol egy eredményt várunk (pl. adatok mentése megerősítéssel).
Single használatának példája:
Single<String> single = Single.create(emitter -> {
// Aszinkron művelet
String result = fetchDataFromNetwork();
if (result != null) {
emitter.onSuccess(result);
} else {
emitter.onError(new Exception("Betöltési hiba"));
}
});
single.subscribe(
data -> System.out.println("Kapott: " + data),
error -> System.err.println("Hiba: " + error.getMessage())
);