我想使用此Observable
在FeedDetails上使用特定字符串过滤响应列表
Observable<List<FeedsDto>> listObservable = mApiService.getFeedDetails(feedsDto);
subscribe(listObservable, feedsDtoList -> view.getAllFees(feedsDtoList), throwable -> Log.e(tag, "getFeedDetails", throwable));
FeedsDto如下
@SerializedName("EntryId")
private int mEntryId;
@SerializedName("EntryTypeId")
private int mEntryTypeId;
@SerializedName("FeedDetails")
private String mFeedDetails;
@SerializedName("FullName")
private String mFullName;
@SerializedName("Id")
private int mId;
最佳答案
listObservable
.flatMapIterable(it -> it)
.filter(feedDto -> feedDto.feedDetails().equals("string_to_filter_by"))
.subscribe(...);
flatMapIterable
->从FeedDto
对象列表转换为单个FeedDto
对象filter
->通过某些String / feedDetails组合过滤它们这确实意味着您在最后订阅时将不再具有
List<FeedDto>
,而只是一个FeedDto
对象流。