国产一区二区精品-国产一区二区精品久-国产一区二区精品久久-国产一区二区精品久久91-免费毛片播放-免费毛片基地

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時隨地免費學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時隨地免費學(xué)習(xí)課程

當(dāng)前位置:首頁  >  技術(shù)干貨  > Java Stream.of()和IntStream.range()有哪些區(qū)別?

Java Stream.of()和IntStream.range()有哪些區(qū)別?

來源:千鋒教育
發(fā)布人:xqq
時間: 2023-10-11 16:06:54 1697011614

一、Java Stream.of()和IntStream.range()的區(qū)別

1、數(shù)據(jù)類型不同

Stream.of()返回的是一個泛型類型的Stream,可以接受任意類型的對象,包括基本數(shù)據(jù)類型和對象類型。而IntStream.range()返回的是一個IntStream,只能接受基本數(shù)據(jù)類型int。

2、元素來源不同

Stream.of()接受一系列的元素作為參數(shù),這些元素可以是任意類型的對象,可以是單個元素或者是一個數(shù)組。而IntStream.range()接受兩個參數(shù),一個是起始值(inclusive),一個是結(jié)束值(exclusive),并生成一個序列從起始值到結(jié)束值-1的整數(shù)。

3、序列長度不同

IntStream.range()生成的序列長度是確定的,它是結(jié)束值減去起始值。而Stream.of()的序列長度是不確定的,它取決于傳入的元素個數(shù)。

4、中間操作不同

Stream.of()和IntStream.range()可以使用許多相同的中間操作,例如filter、map、reduce等。但是,IntStream.range()還提供了一些特殊的中間操作,例如rangeClosed()、sum()、average()等,這些操作只適用于基本數(shù)據(jù)類型int。

5、終止操作不同

終止操作是Stream流的最后一個操作,用于獲取結(jié)果或?qū)⒘鬓D(zhuǎn)換為其他類型。Stream.of()和IntStream.range()可以使用相同的終止操作,例如forEach、collect、toArray等。但是,IntStream.range()還提供了一些特殊的終止操作,例如sum()、average()、min()、max()等,這些操作只適用于基本數(shù)據(jù)類型int。

6、使用場景不同

Stream.of()適用于處理任意類型的對象,例如集合、數(shù)組、枚舉等。而IntStream.range()適用于處理基本數(shù)據(jù)類型int的序列,例如計算數(shù)列、求和、平均值等。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強師集結(jié),手把手帶你蛻變精英
請您保持通訊暢通,專屬學(xué)習(xí)老師24小時內(nèi)將與您1V1溝通
免費領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT