JAVA技術
  當前位置:首頁 > 技術支持 > JAVA技術
Java中stream的(de)簡單使用(yòng)
發布時(shí)間:2019-09-27 浏覽:2827次
  

在Java8中,出現了(le)stream流的(de)概念。我個(gè)人(rén)認爲,流的(de)使用(yòng)可(kě)以幫助我們更好的(de)對(duì)數據集合進行叠代。

下(xià)面,先簡單看一下(xià)普通(tōng)for循環和(hé)stream流的(de)代碼。

輸出結果:

[2, 4

[2, 4]

可(kě)以看出,對(duì)于stream流的(de)使用(yòng),有時(shí)是可(kě)以簡化(huà)我們代碼的(de)複雜(zá)度,并且配合lambda表達式,可(kě)以讓代碼更加容易被人(rén)理(lǐ)解。

下(xià)面簡單介紹一下(xià)Java中stream流的(de)使用(yòng):

1.創建stream流

List集合創建創建:調用(yòng)List的(de)stream方法即可(kě),如 list.stream()

數組的(de)創建方式爲:通(tōng)過Arrays.stream()傳入數組即可(kě),如:Arrays.stream(new Integer[]{1,2})

注:stream流被創建出來(lái)之後隻能被使用(yòng)一次,如需再次循環需要再次創建!

2. 常用(yòng)方法介紹:

流的(de)方法被分(fēn)爲中間操作和(hé)終端操作,顧名思義,中間操作是指調用(yòng)方法後生成新的(de)流,可(kě)以繼續執行操作,而終端操作則是結束流的(de)使用(yòng)。

中間操作:

  1.filter  過濾掉不符合的(de)數據

  2.limit  隻取前x條數據

  3.skip  跳過(删除)x條數據

  4.distinct  去重複數據

  5.sorted  排序

  6.map  對(duì)數據重整,生成新的(de)數據流(如何從用(yòng)戶集合流中取出用(yòng)戶年齡作爲新的(de)流)

終端操作:

  1.count  統計數據數量

  2.forEach  對(duì)流中每個(gè)數據都執行傳入的(de)方法

  3.anyMatch  至少一個(gè)匹配,返回bool

  4.allMatch  匹配所有,返回bool

  5.collect  可(kě)以傳入集合中的(de)常用(yòng)方法,例如:Collector.toList()将流轉回集合,Collector.groupingBy()将流中數據分(fēn)組

  6.reduce  進行歸約操作,例如求和(hé)等

今天就先做(zuò)了(le)一下(xià)Java中stream流的(de)簡單使用(yòng)介紹,謝謝。

 附件:  1、 code.png(15k)  
 
    
 
 
版權所有 © 2005-2024 安徽問法信息技術有限公司  
地址:安徽省合肥市蜀山區(qū)望江西路69号西湖國際廣場(chǎng) 電話(huà):0551-64935878 郵箱:admin@ajsoft.cn