<sup id="m40ya"></sup>
  • 
    
  • <kbd id="m40ya"></kbd>
    <samp id="m40ya"></samp>
    <ul id="m40ya"></ul>
  • 更多精彩內容,歡迎關注:

    視頻號
    視頻號

    抖音
    抖音

    快手
    快手

    微博
    微博

    java flatmap

    文檔

    java flatmap

    使用flatMap方法的效果是,各個數組并不是分別映射一個流,而是映射成流的內容,所有使用map(Array::stream)時生成的單個流被合并起來,即扁平化為一個流。
    推薦度:
    導讀使用flatMap方法的效果是,各個數組并不是分別映射一個流,而是映射成流的內容,所有使用map(Array::stream)時生成的單個流被合并起來,即扁平化為一個流。

    很多朋友都想知道java flatmap的作用有哪些?下面就一起來了解一下吧~

    構建對象

    class?User{
    ?private???String?addr
    }

    將多個User集合中的addr按照;分割合并成一個字符串list

    ??List?uList?=?Lists.newArrayList();
    ????????User?u1?=?new?User();
    ????????u1.setAddr("a1;a2;a3;a4;a5");
    ?
    ????????User?u2?=?new?User();
    ????????u2.setAddr("b1;b2;b3;b4;b5");
    ?
    ????????uList.add(a);
    ????????uList.add(b);
    ?
    ????????List?addrList?=?uList.stream().map(x?->?x.getAddr()).flatMap(x->Arrays.stream(x.split(";"))).collect(Collectors.toList());
    ????????//或者
    ????????List?ridStrList?=?uList.stream().map(x?->?x.getAddr()).map(x?->?x.split(";")).flatMap(Arrays::stream).collect(Collectors.toList());
    ????????System.out.println(addrList);

    說明:

    latMap的用法和含義住要通過一個案例來講解,

    案例:對給定單詞列表 ["Hello","World"],你想返回列表["H","e","l","o","W","r","d"]

    第一種方式

    String[]?words?=?new?String[]{"Hello","World"};
    ????????List?a?=?Arrays.stream(words)
    ????????????????.map(word?->?word.split(""))
    ????????????????.distinct()
    ????????????????.collect(toList());
    ????????a.forEach(System.out::print);

    代碼輸出為:[Ljava.lang.String;@12edcd21[Ljava.lang.String;@34c45dca (返回一個包含兩個String[]的list)

    ? 傳遞給map方法的lambda為每個單詞生成了一個String[](String列表)。因此,map返回的流實際上是Stream 類型的。想要的是用Stream來表示一個字符串。

    ? ? ? ? 下方圖是上方代碼stream的運行流程

    第二種方式:flatMap(對流扁平化處理)

    ??String[]?words?=?new?String[]{"Hello","World"};
    ????????List?a?=?Arrays.stream(words)
    ????????????????.map(word?->?word.split(""))
    ????????????????.flatMap(Arrays::stream)
    ????????????????.distinct()
    ????????????????.collect(toList());
    ????????a.forEach(System.out::print);

    結果輸出:HeloWrd

    使用flatMap方法的效果是,各個數組并不是分別映射一個流,而是映射成流的內容,所有使用map(Array::stream)時生成的單個流被合并起來,即扁平化為一個流。

    下圖是運用flatMap的stream運行流程,

    以上就是小編今天的分享,希望能夠幫到大家。

    文檔

    java flatmap

    使用flatMap方法的效果是,各個數組并不是分別映射一個流,而是映射成流的內容,所有使用map(Array::stream)時生成的單個流被合并起來,即扁平化為一個流。
    推薦度:
    為你推薦
    資訊專欄
    熱門視頻
    相關推薦
    java dowhile java flink java drools java dto java dynamic java flume java ear java foreach循環 java fork java ecc加密 java formatter java echarts java ehcache java email java empty java encapsulation java future java generator java enhancer java generic java findfirst java fileinputstream java file.exists() java dockerfile java field獲取值 java field java divide java feign java fastjson java dict java development java fastdfs java dev java dependency java調用asmx接口 java delete java獲取絕對值 java調用c++ java調用c++接口 java delegate
    Top 97精品伊人久久大香线蕉app| 日韩A∨精品日韩在线观看| 亚洲精品高清国产一久久| 国产天堂亚洲精品| 亚洲制服丝袜精品久久| 在线观看亚洲精品福利片| 国产精品久久久久久久久电影网 | 久久99精品国产99久久6| 99久久久国产精品免费无卡顿| 国产亚洲精品自在久久| 成人国产精品999视频| 无码精品尤物一区二区三区 | 亚洲av产在线精品亚洲第一站| 老司机精品视频在线| 精品哟哟哟国产在线不卡 | 亚洲精品无码mⅴ在线观看| 少妇精品无码一区二区三区| 精品久久综合1区2区3区激情| 日韩精品免费一区二区三区| 国产成人精品男人的天堂538| 国产午夜福利精品一区二区三区| 亚洲国产精品激情在线观看| 国产人妻人伦精品1国产盗摄| 91久久亚洲国产成人精品性色| 国产亚洲精品va在线| 国产精品无码免费专区午夜| 国产乱色精品成人免费视频| 精品国产粉嫩内射白浆内射双马尾 | 99精品在线视频观看| 99久久国产综合精品女同图片| 第一福利永久视频精品| 国产精品老熟女露脸视频| 久久亚洲精品高潮综合色a片| 国产精品香蕉在线一区| 69精品久久久久| 嫖妓丰满肥熟妇在线精品| 久久精品影院永久网址| 国语精品一区二区三区| 亚洲精品乱码久久久久66| 中文国产成人精品久久96| 久久精品这里只有精99品|