我有一个列表TeamMember对象:
class TeamMember {
List<Sport> sports;
}
当前的任务是让具有投入运动的团队成员返回。
我已经做到了:
Observable.fromIterable(getTeamMembers())
.flatMapIterable(teamMember -> teamMember.getSports())
.filter(sport -> sport.equals(selectedSport))
但是这只是一项匹配的运动,而我的原始团队成员已经丢失。
想法?
答案 0 :(得分:1)
再将其嵌套在flatMap
中,您将可以访问lambda中的TeamMember
。
Observable.fromIterable(getTeamMembers())
.flatMap(teamMember -> Observable.fromIterable(teamMember.getSports())
.filter(sport -> sport.equals(selectedSport))
.map(sportMatchingSelectedSport -> new TeamMemberWithSport(teamMember, sportMatchingSelectedSport)))