1. <ul id="0c1fb"></ul>

      <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
      <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区

      RELATEED CONSULTING
      相關(guān)咨詢
      選擇下列產(chǎn)品馬上在線溝通
      服務(wù)時間:8:30-17:00
      你可能遇到了下面的問題
      關(guān)閉右側(cè)工具欄

      新聞中心

      這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
      JDK8中的Stream怎么用

      這篇文章主要介紹了JDK8中的Stream怎么用,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

      10余年的六盤水網(wǎng)站建設(shè)經(jīng)驗,針對設(shè)計、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時及時工作處理。網(wǎng)絡(luò)營銷推廣的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整六盤水建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計,從而大程度地提升瀏覽體驗。創(chuàng)新互聯(lián)建站從事“六盤水網(wǎng)站設(shè)計”,“六盤水網(wǎng)站推廣”以來,每個客戶項目都認真落實執(zhí)行。

      為什么需要 Stream

      Stream 作為 Java 8 的一大亮點,它與 java.io 包里的 InputStream 和 OutputStream 是完全不同的概念。它也不同于 StAX 對 XML 解析的 Stream,也不是 Amazon Kinesis 對大數(shù)據(jù)實時處理的 Stream。Java 8 中的 Stream 是對集合(Collection)對象功能的增強,它專注于對集合對象進行各種非常便利、高效的聚合操作(aggregate operation),或者大批量數(shù)據(jù)操作 (bulk data operation)。Stream API 借助于同樣新出現(xiàn)的 Lambda 表達式,極大的提高編程效率和程序可讀性。同時它提供串行和并行兩種模式進行匯聚操作,并發(fā)模式能夠充分利用多核處理器的優(yōu)勢,使用 fork/join 并行方式來拆分任務(wù)和加速處理過程。通常編寫并行代碼很難而且容易出錯, 但使用 Stream API 無需編寫一行多線程的代碼,就可以很方便地寫出高性能的并發(fā)程序。所以說,Java 8 中首次出現(xiàn)的 java.util.stream 是一個函數(shù)式語言+多核時代綜合影響的產(chǎn)物。同時,理論上流的數(shù)據(jù)源可以是無限大的。

      從以上介紹上(摘抄自網(wǎng)上= =||)可以看出:

      1、JDK8中的Stream的數(shù)據(jù)源來自集合,Stream是對集合進行操作的;

      2、Stream無須顯示的編寫多線程代碼就可實現(xiàn)并行(利用fork/join框架)。

      下面就開始用代碼簡單展示下Stream的用法(主要與傳統(tǒng)寫法對比)。

      遍歷集合

      遍歷集合是對集合最常見的操作了

      首先是傳統(tǒng)寫法:

      JDK8中的Stream怎么用

      然后是Stream寫法:

      JDK8中的Stream怎么用

      集合的遍歷看起來似乎并沒有什么太大區(qū)別,都是三行,下面換一個復(fù)雜的場景

      求最大值(集合中都是int類型的值)

      傳統(tǒng)寫法:

      JDK8中的Stream怎么用

      Stream寫法:

      JDK8中的Stream怎么用

      此時Stream的優(yōu)勢就顯而易見了,首先是代碼的縮減,最主要的是語義上比第一個要清晰多了(至少我這么認為O(∩_∩)O哈哈哈~)

      數(shù)據(jù)過濾:

      數(shù)據(jù)過濾也是常用的操作之一,下面通過過濾集合中大于10的數(shù)來比較一下傳統(tǒng)寫法和Stream寫法的差別。

      傳統(tǒng)寫法:

      JDK8中的Stream怎么用

      Stream寫法:

      JDK8中的Stream怎么用

      數(shù)據(jù)轉(zhuǎn)換

      數(shù)據(jù)的轉(zhuǎn)換也是很常見的對集合的操作,下面示范一下將集合中的字符串轉(zhuǎn)成數(shù)字的操作(集合中的字符串都是數(shù)字)。

      首先是傳統(tǒng)操作:

      JDK8中的Stream怎么用

      Stream操作:

      JDK8中的Stream怎么用

      可以看出這個操作也是很簡潔的。

      除了以上幾種操作外流還能完成許多事情(許多數(shù)據(jù)庫的操作流也都可以完成),各位自己可以嘗試一下。另外需要注意的是,默認流是串行操作的,除非自己指定需要并行操作。

      獲取流的途徑:

      Collection.stream()-->串行流

      Collection.parallelStream()-->并行流

      Arrays.stream(T array) or Stream.of()-->串行流

      java.util.stream.IntStream.range()-->串行流

      .......

      除了以上列出的幾種外還有其他的方式,不過常用的就這幾種了,能滿足日常大部分需求了。

      感謝你能夠認真閱讀完這篇文章,希望小編分享的“JDK8中的Stream怎么用”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!


      網(wǎng)站標題:JDK8中的Stream怎么用
      路徑分享:http://www.ef60e0e.cn/article/pjdjis.html
      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区
      1. <ul id="0c1fb"></ul>

        <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
        <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

        嘉善县| 陵水| 临江市| 集安市| 北流市| 城步| 宣威市| 龙口市| 肥西县| 特克斯县| 和田县| 天台县| 通榆县| 中西区| 中阳县| 吉水县| 东阳市| 科技| 无为县| 慈利县| 石门县| 元谋县| 收藏| 淮安市| 库车县| 德庆县| 忻州市| 苍南县| 杭锦旗| 陇川县| 龙胜| 广南县| 绍兴县| 上思县| 山阴县| 郑州市| 凉城县| 汉沽区| 台湾省| 湘乡市| 兴隆县|