3
map
, concatMap
, all
을 사용하여 객체를 반복하는 데 여러 연산자를 사용했지만 내 목록에서 요소를 제거 할 수 없습니다.RxJava : 목록에서 요소 제거
Observable.fromIterable(selectedJobs)
.observeOn(AndroidSchedulers.mainThread()) // Added this from one answer in SO. but still no resolution.
.all(homeJob -> {
if (!homeJob.isCanCloseJob()) {
selectedJobs.remove(homeJob); // <- this is what causing Exception
//toast message
} else {
//do something
}
return true;
})
.subscribe(new SingleObserver<Boolean>() {
@Override
public void onSubscribe(Disposable disposable) {
}
@Override
public void onSuccess(Boolean aBoolean) {
baseRealm.executeTransaction(realm -> realm.copyToRealmOrUpdate(selectedJobs));
}
@Override
public void onError(Throwable throwable) {
AppLogger.e(tag, throwable.getMessage());
// throws Caused by: java.util.ConcurrentModificationException
}
});
내가 원하는 건 다음 조건을 확인 목록에서 개체를 제거하는 것입니다 : 여기
코드의 조각이다.
하지만 필터링 된 모든 객체를 원하고 당신이() toList'으로 무슨 일을하는지의'함수를 반환하는 onSuccess에서 필터링 된 목록. 감사. 나는이 대답을 받아 들인다. – Aks4125