Junior — Middle
Qual è la differenza tra i tipi di dati Single e Observable nella libreria RxJava?
sobes.tech AI
Risposta dell'AI
In RxJava, i tipi Single e Observable differiscono per quantità e carattere degli elementi emessi:
-
Observable può emettere qualsiasi numero di elementi (0, 1 o molti), e può terminare con successo o con errore. È adatto per flussi di dati in cui si prevedono più valori nel tempo.
-
Single garantisce l'emissione di esattamente un elemento o un errore. È utile per operazioni che restituiscono un risultato unico, come una richiesta di rete o di database.
Esempio di utilizzo di Single:
Single<String> single = Single.just("Ciao");
single.subscribe(
item -> System.out.println("Ricevuto: " + item),
error -> System.err.println("Errore: " + error)
);
Observable può apparire così:
Observable<Integer> observable = Observable.just(1, 2, 3);
observable.subscribe(
item -> System.out.println("Ricevuto: " + item),
error -> System.err.println("Errore: " + error),
() -> System.out.println("Completato")
);