我不太理解何时使用flatmap而不是map,也没有找到好的例子。您能想出一个好的场景来选择使用flatmap吗?谢谢。
我不太理解何时使用flatmap而不是map,也没有找到好的例子。您能想出一个好的场景来选择使用flatmap吗?谢谢。
flatMap
的一个好的应用场景。示例代码如下:interface Movie {
}
interface UserInfo {
List<Long> getFavoriteMovies();
}
public Observable<UserInfo> requestUserInfo(long userId) {
// ...
}
public Observable<List<Movie>> requestMovieList(List<Long> movieIds) {
// ...
}
public Observable<List<Movie>> requestUserMovieList(long userId) {
return requestUserInfo(userId).flatMap(new Func1<UserInfo, Observable<List<Movie>>>() {
@Override
public Observable<List<Movie>> call(UserInfo user) {
return requestMovieList(user.getFavoriteMovies());
}
});
}