最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

StreamAPI多次消費一個stream代碼實例

 更新時間:2020年04月01日 09:23:45   作者:JaxYoun  
這篇文章主要介紹了StreamAPI多次消費一個stream代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

StreamAPI中的stream不能被重復消費,一旦它被使用,stream就被關閉了,別的地方再消費它就會拋IllegalStateException:stream has already been operated upon or closed。

比如下面的代碼中,stream被消費了兩次,第二次消費時將會拋異常:

@Test
public void statistics() {
  IntStream range = IntStream.range(0, 12);

  OptionalInt min = range.min(); //第一次消費正常
  System.out.println(min);

  long count = range.count(); //第二次消費將報錯
  System.out.println(count);
}

如何實在需要多次消費呢,通過Supplier來生產stream,每次調用supplier.get()獲取一個嶄新的stream對象,雖然對象是新的,但是每個stream中的數(shù)據是相同的,間接地實現(xiàn)了重復消費的語義:

@Test
public void statistics0() {
  Supplier<IntStream> supplier= () -> IntStream.range(0, 12);

  OptionalInt min = supplier.get().min(); //第一次消費正常
  System.out.println(min);

  long count = supplier.get().count(); //第二次消費正常
  System.out.println(count);
}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 解決mybatis 中collection嵌套collection引發(fā)的bug

    解決mybatis 中collection嵌套collection引發(fā)的bug

    這篇文章主要介紹了解決mybatis 中collection嵌套collection引發(fā)的bug,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • kotlin之閉包案例詳解

    kotlin之閉包案例詳解

    這篇文章主要介紹了kotlin之閉包案例詳解,本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內容,需要的朋友可以參考下
    2021-09-09
  • Java 十大排序算法之計數(shù)排序刨析

    Java 十大排序算法之計數(shù)排序刨析

    計數(shù)排序是一個非基于比較的排序算法,該算法于1954年由 Harold H. Seward 提出。它的優(yōu)勢在于在對一定范圍內的整數(shù)排序時,它的復雜度為Ο(n+k)(其中k是整數(shù)的范圍),快于任何比較排序算法
    2021-11-11
  • Java基礎-Java的體系結構

    Java基礎-Java的體系結構

    這篇文章主要介紹了Java的體系結構,Java幾乎成為了“開源”的代名詞。第三方開源軟件和框架。如Tomcat、Struts,MyBatis,Spring等,下面我們來看看文章具體的內容介紹吧
    2022-01-01
  • java中Calendar與Date類型互相轉換的方法

    java中Calendar與Date類型互相轉換的方法

    這篇文章主要介紹了java中Calendar與Date類型互相轉換的方法,Calendar與Date類型是我們日常開發(fā)中常用的兩種數(shù)據類型,它們用于不同的場景,兩者具有不同的方法,接下來通過實例給大家詳解,需要的朋友可以參考下
    2022-09-09
  • Spring實現(xiàn)Logback日志模板設置動態(tài)參數(shù)功能

    Spring實現(xiàn)Logback日志模板設置動態(tài)參數(shù)功能

    本文介紹如何在Spring應用中實現(xiàn)Logback日志模板的動態(tài)參數(shù)設置,通過設計traceId鏈路標識,將其動態(tài)添加到日志輸出中,從而實現(xiàn)簡易的鏈路追蹤功能,感興趣的朋友跟隨小編一起看看吧
    2024-11-11
  • Java三元表達式使用及注意事項詳解

    Java三元表達式使用及注意事項詳解

    這篇文章主要介紹了Java三元表達式使用及注意事項的相關資料,Java中的三元運算符是一種簡潔的條件語句,它可以根據一個條件來選擇兩個不同的值中的一個,適用于簡單的條件賦值場景,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-04-04
  • 對ArrayList和LinkedList底層實現(xiàn)原理詳解

    對ArrayList和LinkedList底層實現(xiàn)原理詳解

    今天小編就為大家分享一篇對ArrayList和LinkedList底層實現(xiàn)原理詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • Java對int[]數(shù)組做新增刪除去重操作代碼

    Java對int[]數(shù)組做新增刪除去重操作代碼

    這篇文章主要介紹了Java里面對int[]數(shù)組做新增刪除去重實現(xiàn),這里記錄下使用int[]數(shù)組對數(shù)組進行新增刪除去重等操作,用來更加了解java里面的集合類思想,需要的朋友可以參考下
    2023-10-10
  • 淺談為什么要使用mybatis的@param

    淺談為什么要使用mybatis的@param

    這篇文章主要介紹了淺談為什么要使用mybatis的@param,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-10-10

最新評論

五寨县| 莱西市| 宁南县| 洛扎县| 城步| 巴东县| 泽普县| 灵台县| 丰顺县| 克什克腾旗| 长乐市| 海城市| 武夷山市| 丹凤县| 巢湖市| 尼勒克县| 深水埗区| 安西县| 凤凰县| 三门峡市| 井研县| 辽阳市| 哈尔滨市| 天等县| 洛浦县| 保康县| 汉川市| 德兴市| 饶河县| 万荣县| 秦安县| 绵阳市| 津市市| 德令哈市| 简阳市| 古交市| 万全县| 永寿县| 栾川县| 前郭尔| 东丰县|