io.reactivex.Single.map()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(8.3k)|赞(0)|评价(0)|浏览(191)

本文整理了Java中io.reactivex.Single.map()方法的一些代码示例,展示了Single.map()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Single.map()方法的具体详情如下:
包路径:io.reactivex.Single
类名称:Single
方法名:map

Single.map介绍

[英]Returns a Single that applies a specified function to the item emitted by the source Single and emits the result of this function application.

Scheduler: map does not operate by default on a particular Scheduler.
[中]返回一个函数,该函数将指定函数应用于源函数发出的项,并发出此函数应用程序的结果。
Scheduler:map默认情况下不会在特定的计划程序上运行。

代码示例

代码示例来源:origin: ReactiveX/RxJava

@Override
  public SingleSource<Object> apply(Single<Integer> f) {
    return f.map(new Function<Integer, Object>() {
      @Override
      public Object apply(Integer v) throws Exception {
        return v + 1;
      }
    });
  }
})

代码示例来源:origin: spring-projects/spring-framework

@PostMapping("/rxjava2-single")
@SuppressWarnings("deprecation")
public io.reactivex.Completable createWithRxJava2Single(@RequestBody io.reactivex.Single<Person> single) {
  return single.map(persons::add).toCompletable();
}

代码示例来源:origin: spring-projects/spring-framework

@PostMapping("/rxjava2-single")
public io.reactivex.Single<Person> transformRxJava2Single(@RequestBody io.reactivex.Single<Person> personFuture) {
  return personFuture.map(person -> new Person(person.getName().toUpperCase()));
}

代码示例来源:origin: ReactiveX/RxJava

@Test
public void testAggregateAsIntSumResultSelectorThrows() {
  Function<Integer, Integer> error = new Function<Integer, Integer>() {
    @Override
    public Integer apply(Integer t1) {
      throw new TestException();
    }
  };
  Single<Integer> result = Observable.just(1, 2, 3, 4, 5)
      .reduce(0, sum).map(error);
  result.subscribe(singleObserver);
  verify(singleObserver, never()).onSuccess(any());
  verify(singleObserver, times(1)).onError(any(TestException.class));
}

代码示例来源:origin: ReactiveX/RxJava

@Test
public void testAggregateAsIntSum() {
  Single<Integer> result = Observable.just(1, 2, 3, 4, 5).reduce(0, sum)
      .map(new Function<Integer, Integer>() {
        @Override
        public Integer apply(Integer v) {
          return v;
        }
      });
  result.subscribe(singleObserver);
  verify(singleObserver).onSuccess(1 + 2 + 3 + 4 + 5);
  verify(singleObserver, never()).onError(any(Throwable.class));
}

代码示例来源:origin: ReactiveX/RxJava

@Test
public void testAggregateAsIntSumResultSelectorThrows() {
  Function<Integer, Integer> error = new Function<Integer, Integer>() {
    @Override
    public Integer apply(Integer t1) {
      throw new TestException();
    }
  };
  Single<Integer> result = Flowable.just(1, 2, 3, 4, 5)
      .reduce(0, sum).map(error);
  result.subscribe(singleObserver);
  verify(singleObserver, never()).onSuccess(any());
  verify(singleObserver, times(1)).onError(any(TestException.class));
}

代码示例来源:origin: ReactiveX/RxJava

@Test(expected = NullPointerException.class)
public void mapNull() {
  Single.just(1).map(null);
}

代码示例来源:origin: ReactiveX/RxJava

@Test
public void testAggregateAsIntSumAccumulatorThrows() {
  BiFunction<Integer, Integer, Integer> sumErr = new BiFunction<Integer, Integer, Integer>() {
    @Override
    public Integer apply(Integer t1, Integer t2) {
      throw new TestException();
    }
  };
  Single<Integer> result = Observable.just(1, 2, 3, 4, 5)
      .reduce(0, sumErr).map(new Function<Integer, Integer>() {
        @Override
        public Integer apply(Integer v) {
          return v;
        }
      });
  result.subscribe(singleObserver);
  verify(singleObserver, never()).onSuccess(any());
  verify(singleObserver, times(1)).onError(any(TestException.class));
}

代码示例来源:origin: ReactiveX/RxJava

@Test
public void testAggregateAsIntSum() {
  Single<Integer> result = Flowable.just(1, 2, 3, 4, 5).reduce(0, sum)
      .map(new Function<Integer, Integer>() {
        @Override
        public Integer apply(Integer v) {
          return v;
        }
      });
  result.subscribe(singleObserver);
  verify(singleObserver).onSuccess(1 + 2 + 3 + 4 + 5);
  verify(singleObserver, never()).onError(any(Throwable.class));
}

代码示例来源:origin: ReactiveX/RxJava

@Test
public void testAggregateAsIntSumObservable() {
  Observable<Integer> result = Observable.just(1, 2, 3, 4, 5).reduce(0, sum)
      .map(new Function<Integer, Integer>() {
        @Override
        public Integer apply(Integer v) {
          return v;
        }
      }).toObservable();
  result.subscribe(observer);
  verify(observer).onNext(1 + 2 + 3 + 4 + 5);
  verify(observer).onComplete();
  verify(observer, never()).onError(any(Throwable.class));
}

代码示例来源:origin: ReactiveX/RxJava

@Test
public void testAggregateAsIntSumSourceThrows() {
  Single<Integer> result = Observable.concat(Observable.just(1, 2, 3, 4, 5),
      Observable.<Integer> error(new TestException()))
      .reduce(0, sum).map(new Function<Integer, Integer>() {
        @Override
        public Integer apply(Integer v) {
          return v;
        }
      });
  result.subscribe(singleObserver);
  verify(singleObserver, never()).onSuccess(any());
  verify(singleObserver, times(1)).onError(any(TestException.class));
}

代码示例来源:origin: ReactiveX/RxJava

@Test
public void testAggregateAsIntSumAccumulatorThrows() {
  BiFunction<Integer, Integer, Integer> sumErr = new BiFunction<Integer, Integer, Integer>() {
    @Override
    public Integer apply(Integer t1, Integer t2) {
      throw new TestException();
    }
  };
  Single<Integer> result = Flowable.just(1, 2, 3, 4, 5)
      .reduce(0, sumErr).map(new Function<Integer, Integer>() {
        @Override
        public Integer apply(Integer v) {
          return v;
        }
      });
  result.subscribe(singleObserver);
  verify(singleObserver, never()).onSuccess(any());
  verify(singleObserver, times(1)).onError(any(TestException.class));
}

代码示例来源:origin: ReactiveX/RxJava

@Test
  public void mapError() {
    RuntimeException exception = new RuntimeException("test");

    Single.error(exception).map(new Function<Object, Object>() {
      @Override
      public Object apply(final Object integer) throws Exception {
        return new Object();
      }
    })
    .test()
    .assertError(exception);
  }
}

代码示例来源:origin: ReactiveX/RxJava

@Test
public void testAggregateAsIntSumSourceThrowsObservable() {
  Observable<Integer> result = Observable.concat(Observable.just(1, 2, 3, 4, 5),
      Observable.<Integer> error(new TestException()))
      .reduce(0, sum).map(new Function<Integer, Integer>() {
        @Override
        public Integer apply(Integer v) {
          return v;
        }
      }).toObservable();
  result.subscribe(observer);
  verify(observer, never()).onNext(any());
  verify(observer, never()).onComplete();
  verify(observer, times(1)).onError(any(TestException.class));
}

代码示例来源:origin: ReactiveX/RxJava

/**
 * Casts the success value of the current Single into the target type or signals a
 * ClassCastException if not compatible.
 * <dl>
 * <dt><b>Scheduler:</b></dt>
 * <dd>{@code cast} does not operate by default on a particular {@link Scheduler}.</dd>
 * </dl>
 * @param <U> the target type
 * @param clazz the type token to use for casting the success result from the current Single
 * @return the new Single instance
 * @since 2.0
 */
@CheckReturnValue
@NonNull
@SchedulerSupport(SchedulerSupport.NONE)
public final <U> Single<U> cast(final Class<? extends U> clazz) {
  ObjectHelper.requireNonNull(clazz, "clazz is null");
  return map(Functions.castFunction(clazz));
}

代码示例来源:origin: ReactiveX/RxJava

@Test
public void testAggregateAsIntSumSourceThrows() {
  Single<Integer> result = Flowable.concat(Flowable.just(1, 2, 3, 4, 5),
      Flowable.<Integer> error(new TestException()))
      .reduce(0, sum).map(new Function<Integer, Integer>() {
        @Override
        public Integer apply(Integer v) {
          return v;
        }
      });
  result.subscribe(singleObserver);
  verify(singleObserver, never()).onSuccess(any());
  verify(singleObserver, times(1)).onError(any(TestException.class));
}

代码示例来源:origin: ReactiveX/RxJava

@Test
public void mapValue() {
  Single.just(1).map(new Function<Integer, Integer>() {
    @Override
    public Integer apply(final Integer integer) throws Exception {
      if (integer == 1) {
        return 2;
      }
      return 1;
    }
  })
  .test()
  .assertResult(2);
}

代码示例来源:origin: ReactiveX/RxJava

@Test
public void mapValueErrorThrown() {
  Single.just(1).map(new Function<Integer, SingleSource<Integer>>() {
    @Override
    public SingleSource<Integer> apply(final Integer integer) throws Exception {
      throw new RuntimeException("something went terribly wrong!");
    }
  })
  .test()
  .assertNoValues()
  .assertError(RuntimeException.class)
  .assertErrorMessage("something went terribly wrong!");
}

代码示例来源:origin: ReactiveX/RxJava

@Test
public void testMap() {
  TestSubscriber<String> ts = new TestSubscriber<String>();
  Single.just("A")
      .map(new Function<String, String>() {
        @Override
        public String apply(String s) {
          return s + "B";
        }
      })
      .toFlowable().subscribe(ts);
  ts.assertValueSequence(Arrays.asList("AB"));
}

代码示例来源:origin: ReactiveX/RxJava

@Test
public void mapValueNull() {
  Single.just(1).map(new Function<Integer, SingleSource<Integer>>() {
    @Override
    public SingleSource<Integer> apply(final Integer integer) throws Exception {
      return null;
    }
  })
  .test()
  .assertNoValues()
  .assertError(NullPointerException.class)
  .assertErrorMessage("The mapper function returned a null value.");
}

相关文章

微信公众号

最新文章

更多