代码之家  ›  专栏  ›  技术社区  ›  Tlink

对我从rxJava改装2获得的响应进行过滤操作

  •  1
  • Tlink  · 技术社区  · 7 年前

    如果我使用rxjava转换器进行改装以获得响应,我如何以及在哪里可以过滤结果(例如,过滤到用户列表中,例如whos属性中) boolean paidDues = true )?

    Observable<User> observable = userService.me();
    observable.observeOn(AndroidSchedulers.mainThread())
    .subscribe(new Subscriber<User>() {
        @Override
        public void onCompleted() { // handle completed }
    
        @Override
        public void onError(Throwable e) { // handle error }
    
        @Override
        public void onNext(User user) { // handle response }
    });
    
    1 回复  |  直到 7 年前
        1
  •  2
  •   daemmie    7 年前

    使用过滤器:

    Observable<User> observable = userService.me();
    observable.observeOn(AndroidSchedulers.mainThread())
    .filter(new Predicate<User >() {
            @Override
            public boolean test(@NonNull final User user) throws Exception {
                return user.hasPaidDues(); // or something like this
            }
        })
    .subscribe(...);