io.reactivex.Observable.filter()方法的使用及代码示例

x33g5p2x  于2022-01-25 转载在 其他  
字(6.3k)|赞(0)|评价(0)|浏览(186)

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

Observable.filter介绍

[英]Filters items emitted by an ObservableSource by only emitting those that satisfy a specified predicate.

Scheduler: filter does not operate by default on a particular Scheduler.
[中]通过仅发送满足指定谓词的项来过滤ObservableSource发出的项。
调度程序:默认情况下,过滤器不会在特定调度程序上运行。

代码示例

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

  1. @Override
  2. public ObservableSource<Object> apply(Observable<Object> o) throws Exception {
  3. return o.filter(Functions.alwaysTrue());
  4. }
  5. });

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

  1. @Test
  2. public void testFirstOrElseWithPredicateOfNoneMatchingThePredicate() {
  3. Observable<String> src = Observable.just("a", "b", "c");
  4. src.filter(IS_D).first("default").subscribe(wo);
  5. verify(wo, times(1)).onSuccess(anyString());
  6. verify(wo, times(1)).onSuccess("default");
  7. verify(wo, never()).onError(any(Throwable.class));
  8. }

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

  1. @Test
  2. public void testFirstOrElseWithPredicateOfSome() {
  3. Observable<String> src = Observable.just("a", "b", "c", "d", "e", "f");
  4. src.filter(IS_D).first("default").subscribe(wo);
  5. verify(wo, times(1)).onSuccess(anyString());
  6. verify(wo, times(1)).onSuccess("d");
  7. verify(wo, never()).onError(any(Throwable.class));
  8. }

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

  1. @Test
  2. public void testTakeFirstWithPredicateOfNoneMatchingThePredicate() {
  3. Observable<Integer> o = Observable.just(1, 3, 5, 7, 9, 7, 5, 3, 1);
  4. o.filter(IS_EVEN).take(1).subscribe(w);
  5. verify(w, never()).onNext(anyInt());
  6. verify(w, times(1)).onComplete();
  7. verify(w, never()).onError(any(Throwable.class));
  8. }

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

  1. @Test
  2. public void testFirstOrElseWithPredicateOfSomeObservable() {
  3. Observable<String> src = Observable.just("a", "b", "c", "d", "e", "f");
  4. src.filter(IS_D).first("default").toObservable().subscribe(w);
  5. verify(w, times(1)).onNext(anyString());
  6. verify(w, times(1)).onNext("d");
  7. verify(w, never()).onError(any(Throwable.class));
  8. verify(w, times(1)).onComplete();
  9. }

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

  1. @Test
  2. public void testFirstOrElseWithPredicateOfNoneMatchingThePredicateObservable() {
  3. Observable<String> src = Observable.just("a", "b", "c");
  4. src.filter(IS_D).first("default").toObservable().subscribe(w);
  5. verify(w, times(1)).onNext(anyString());
  6. verify(w, times(1)).onNext("default");
  7. verify(w, never()).onError(any(Throwable.class));
  8. verify(w, times(1)).onComplete();
  9. }

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

  1. @Test
  2. public void testFirstWithPredicateOfNoneMatchingThePredicate() {
  3. Observable<Integer> o = Observable.just(1, 3, 5, 7, 9, 7, 5, 3, 1);
  4. o.filter(IS_EVEN).firstElement().subscribe(wm);
  5. verify(wm, never()).onSuccess(anyInt());
  6. verify(wm).onComplete();
  7. verify(wm, never()).onError(any(Throwable.class));
  8. }

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

  1. @Override
  2. public Observable<Object> apply(Observable<Object> f) throws Exception {
  3. return f.doFinally(ObservableDoFinallyTest.this).filter(Functions.alwaysTrue());
  4. }
  5. });

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

  1. @Test
  2. public void justConditional() {
  3. Observable.just(1)
  4. .doAfterNext(afterNext)
  5. .filter(Functions.alwaysTrue())
  6. .subscribeWith(to)
  7. .assertResult(1);
  8. assertEquals(Arrays.asList(1, -1), values);
  9. }

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

  1. @Test
  2. public void normalJustConditional() {
  3. Observable.just(1)
  4. .doFinally(this)
  5. .filter(Functions.alwaysTrue())
  6. .test()
  7. .assertResult(1);
  8. assertEquals(1, calls);
  9. }

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

  1. @Test
  2. public void asyncFusedRejectedConditional() {
  3. TestObserver<Integer> to0 = ObserverFusion.newTest(QueueFuseable.ASYNC);
  4. Observable.range(1, 5)
  5. .doAfterNext(afterNext)
  6. .filter(Functions.alwaysTrue())
  7. .subscribe(to0);
  8. ObserverFusion.assertFusion(to0, QueueFuseable.NONE)
  9. .assertResult(1, 2, 3, 4, 5);
  10. assertEquals(Arrays.asList(-1, -2, -3, -4, -5), values);
  11. }

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

  1. @Test
  2. public void syncFusedConditional() {
  3. TestObserver<Integer> to0 = ObserverFusion.newTest(QueueFuseable.SYNC);
  4. Observable.range(1, 5)
  5. .doAfterNext(afterNext)
  6. .filter(Functions.alwaysTrue())
  7. .subscribe(to0);
  8. ObserverFusion.assertFusion(to0, QueueFuseable.SYNC)
  9. .assertResult(1, 2, 3, 4, 5);
  10. assertEquals(Arrays.asList(-1, -2, -3, -4, -5), values);
  11. }

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

  1. @Test
  2. public void rangeConditional() {
  3. Observable.range(1, 5)
  4. .doAfterNext(afterNext)
  5. .filter(Functions.alwaysTrue())
  6. .subscribeWith(to)
  7. .assertResult(1, 2, 3, 4, 5);
  8. assertEquals(Arrays.asList(1, -1, 2, -2, 3, -3, 4, -4, 5, -5), values);
  9. }

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

  1. @Test
  2. public void emptyConditional() {
  3. Observable.<Integer>empty()
  4. .doAfterNext(afterNext)
  5. .filter(Functions.alwaysTrue())
  6. .subscribeWith(to)
  7. .assertResult();
  8. assertTrue(values.isEmpty());
  9. }

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

  1. @Test
  2. public void syncFusedBoundaryConditional() {
  3. TestObserver<Integer> to = ObserverFusion.newTest(QueueFuseable.SYNC | QueueFuseable.BOUNDARY);
  4. Observable.range(1, 5)
  5. .doFinally(this)
  6. .filter(Functions.alwaysTrue())
  7. .subscribe(to);
  8. ObserverFusion.assertFusion(to, QueueFuseable.NONE)
  9. .assertResult(1, 2, 3, 4, 5);
  10. assertEquals(1, calls);
  11. }

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

  1. @Test
  2. public void syncFusedConditional() {
  3. TestObserver<Integer> to = ObserverFusion.newTest(QueueFuseable.SYNC);
  4. Observable.range(1, 5)
  5. .doFinally(this)
  6. .filter(Functions.alwaysTrue())
  7. .subscribe(to);
  8. ObserverFusion.assertFusion(to, QueueFuseable.SYNC)
  9. .assertResult(1, 2, 3, 4, 5);
  10. assertEquals(1, calls);
  11. }

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

  1. @Test
  2. public void errorConditional() {
  3. Observable.<Integer>error(new TestException())
  4. .doAfterNext(afterNext)
  5. .filter(Functions.alwaysTrue())
  6. .subscribeWith(to)
  7. .assertFailure(TestException.class);
  8. assertTrue(values.isEmpty());
  9. }

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

  1. @Test
  2. public void normalEmptyConditional() {
  3. Observable.empty()
  4. .doFinally(this)
  5. .filter(Functions.alwaysTrue())
  6. .test()
  7. .assertResult();
  8. assertEquals(1, calls);
  9. }

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

  1. @Test
  2. public void normalTakeConditional() {
  3. Observable.range(1, 10)
  4. .doFinally(this)
  5. .filter(Functions.alwaysTrue())
  6. .take(5)
  7. .test()
  8. .assertResult(1, 2, 3, 4, 5);
  9. assertEquals(1, calls);
  10. }

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

  1. @Test
  2. public void normalErrorConditional() {
  3. Observable.error(new TestException())
  4. .doFinally(this)
  5. .filter(Functions.alwaysTrue())
  6. .test()
  7. .assertFailure(TestException.class);
  8. assertEquals(1, calls);
  9. }

相关文章

Observable类方法