J'essaye de filtrer une liste avec RxJava2 de sorte que chaque article (objet) dans la liste doive passer un contrôle de validation et j'obtiens une liste résultante avec seulement des articles qui passent ce test. Par exemple, si mon objet avait la structure suivante,RxJava2 filter Liste <Object>
class MyClassA {
int value1;
int value2;
}
Je veux seulement obtenir la liste des articles où le value2
est 10.
J'ai une fonction d'appel d'API qui retourne un Observable de la liste, à savoir Observable<List<MyClassA>>
comme suit,
apiService.getListObservable()
.subscribeOn(Schedulers.io)
.observeOn(AndroidSchedulers.mainThread());
et je voudrais avoir la sortie filtrée, donc j'essayé d'ajouter un opérateur .filter()
à ce qui précède, mais il semble exiger un Predicate<List<MyClassA>>
au lieu d'un MyClassA
objet avec lequel je peux vérifier et autoriser seulement ceux où value2 == 10
.
Je suis assez nouveau pour RxJava et RxJava2 et il me semble qu'il me manque quelque chose de basique ici?
TIA
pourriez-vous s'il vous plaît étendre le lambda au code pré Java 8? aiderait vraiment à voir de cette façon – Bootstrapper
Ne fonctionne pas avec fluide –