zoukankan      html  css  js  c++  java
  • FlatMapTest

    package com.test;
    
    import java.time.Duration;
    import java.util.Arrays;
    import lombok.extern.slf4j.Slf4j;
    import org.junit.Test;
    import reactor.core.publisher.Flux;
    
    /**
     * @author: ffzs
     * @Date: 2020/8/7 下午8:18
     */
    
    @Slf4j
    public class FlatMapTest {
    //->a->f->b->f->c->z->d->s
      @Test
      public void flatMap () throws InterruptedException {
        Flux.just("abcd", "ffzs")
            .flatMap(i -> Flux.fromArray(i.split("")).delayElements(Duration.ofMillis(10)))
            .subscribe(i -> System.out.print("->"+i));
        Thread.sleep(100);
      }
    //->a->b->c->d->f->f->z->s
      @Test
      public void flatMapSequential () throws InterruptedException {
        Flux.just("abcd", "ffzs")
            .flatMapSequential(i -> Flux.fromArray(i.split("")).delayElements(Duration.ofMillis(10)))
            .subscribe(i -> System.out.print("->"+i));
        Thread.sleep(1000);
      }
    
     /* @Test
      public void testConcurrencyAndPrefetch() {
        int concurrency = 3;
        int prefetch = 6;
        Flux.range(1, 1)
            //.log()
            .flatMap(i -> Flux.just(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
                   .log()
                ,
                concurrency, prefetch)
            .subscribe(i -> System.out.print("->"+i));
      }*/
    //->a->b->c->d->f->f->z->s
        @Test
      public void flatMapIterable () {
        Flux.just("abcd", "ffzs")
            .flatMapIterable(i -> Arrays.asList(i.split("")))
            .subscribe(i -> System.out.print("->"+i));
      }
    //->a->b->c->d->f->f->z->s
      @Test
      public void concatMap () throws InterruptedException {
        Flux.just("abcd", "ffzs")
            .concatMap(i -> Flux.fromArray(i.split("")).delayElements(Duration.ofMillis(10)))
            .subscribe(i -> System.out.print("->"+i));
        Thread.sleep(110);
      }
    //->a->b->c->d->f->f->z->s
     @Test
      public void concatMapIterable () {
        Flux.just("abcd", "ffzs")
            .concatMapIterable(i -> Arrays.asList(i.split("")))
            .subscribe(i -> System.out.print("->"+i));
      }
    }
  • 相关阅读:
    matplotlib
    Android 集成 支付宝支付
    android 自动化测试案例之 MonkeyRunner
    android 自动化测试案例之 MonkeyScript
    Android 使用自定义Drawable 设置圆角矩形或者圆形图片
    android 仿微信朋友圈图片选择控件
    Android 自定义控件之 日期选择控件
    android 和 js 交互
    android 蓝牙连接端(客户端)封装
    android 项目集成 微信支付
  • 原文地址:https://www.cnblogs.com/tonggc1668/p/13999917.html
Copyright © 2011-2022 走看看