<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 日本精品VIDEOSSE×少妇| 99在线精品视频在线观看| 免费国产在线精品一区| 亚洲欧洲国产经精品香蕉网| 精品四虎免费观看国产高清午夜| 婷婷成人国产精品| 精品国产一区二区二三区在线观看| 1313午夜精品理伦片| 久久精品中文字幕久久| 国产精品一区在线观看你懂的| 国产精品麻豆免费版| 亚洲精品动漫免费二区| 中文字幕亚洲精品无码| 99在线观看精品免费99| 久久这里只有精品久久| 久久精品国产只有精品66| www国产亚洲精品久久久日本| 99精品全国免费观看视频| 四虎永久在线精品波多野结衣| 99国产精品免费观看视频| 久久精品99视频| 久久久精品2019中文字幕之3| 野狼第一精品社区| 99精品视频在线观看| 精品视频一区二区三区| 国产精品无码DVD在线观看| 午夜精品久久久久9999高清| 国产精品午夜电影| 国产精品第一区揄拍无码| 久久精品国产亚洲AV天海翼 | 无码人妻精品中文字幕| 久久精品成人免费看| 久久99国产精品99久久| 精品一区二区三区免费| 国产麻豆精品一区二区三区v视界 国产麻豆一精品一AV一免费 | 精品国产V无码大片在线看| 99久久99久久免费精品小说| 久久精品aⅴ无码中文字字幕不卡 久久精品aⅴ无码中文字字幕重口 | 99国产精品热久久久久久| 久久亚洲国产成人精品性色| 色欲精品国产一区二区三区AV|