(я не знаю, полностью ли я понимаю вашу идею или нет)
Насколько я знаю, в настоящее время ни один оператор не позволяет нам делать то, что вы хотите.Итак, чтобы решить вашу проблему, я всегда стараюсь комбинировать операции.
Пожалуйста, смотрите детали ниже:
Первый: метод для получения вашего списка
private List getYourList() {
// do something here to get your list
return yourList;
}
Второй: метод для получения списка с условием, не забывайте использовать Observable.fromCallable
private Observable<List> getListWithCondition() {
return Observable.fromCallable(new Callable<List<Employee>>() {
@Override
public List<Employee> call() throws Exception {
// check your condition if needed
if (My_Condition_is_true) {
//...
}
val newList = getNewListIfConditionIsOkay(it);
return newList;
}
});
}
Наконец, сделайте свою работу, вызвав функцию выше
public void doYourWork() {
getListWithCondition().map(new Func1<List<>, Object>() {
item -> toSomethingElse(item)
}).subscribe();
}
Пожалуйста, дайте мне знать, если я не понимаю вашу точку зрения правильно, я удалю свой ответ.Надеюсь, что поможет.