新聞中心
SplittableRandom

成都創(chuàng)新互聯(lián)服務(wù)項目包括藁城網(wǎng)站建設(shè)、藁城網(wǎng)站制作、藁城網(wǎng)頁制作以及藁城網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,藁城網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到藁城省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
java.lang.Object
|---java.util.SplittableRandom
public final class SplittableRandom
extends Object適用于(在其他上下文中)可能生成子任務(wù)的隔離并行計算的統(tǒng)一偽隨機(jī)值生成器。 SplittableRandom 類支持產(chǎn)生 int、long 和 double 類型的偽隨機(jī)數(shù)的方法,其用法與類 Random 類似,但在以下方面有所不同:
- 一系列生成的值通過了 DieHarder 套件測試隨機(jī)數(shù)生成器的獨立性和一致性屬性。 (最近使用版本 3.31.1 進(jìn)行了驗證。)這些測試僅驗證某些類型和范圍的方法,但預(yù)計類似的屬性也至少大致適用于其他屬性。周期(任何一系列生成值在重復(fù)之前的長度)至少為 264。
- 方法 split() 構(gòu)造并返回一個新的 SplittableRandom 實例,該實例與當(dāng)前實例不共享可變狀態(tài)。但是,兩個對象共同生成的值很有可能具有相同的統(tǒng)計屬性,就好像單個線程使用單個 SplittableRandom 對象生成相同數(shù)量的值一樣。
- SplittableRandom 的實例不是線程安全的。它們被設(shè)計為跨線程拆分而不是共享。例如,使用隨機(jī)數(shù)的 fork/join 式計算可能包括 new Subtask(aSplittableRandom.split()).fork() 形式的構(gòu)造。
- 此類提供用于生成隨機(jī)流的附加方法,在 stream.parallel() 模式下使用時采用上述技術(shù)。
SplittableRandom 的實例在密碼學(xué)上不是安全的。 考慮在安全敏感的應(yīng)用程序中使用 SecureRandom。 此外,默認(rèn)構(gòu)造的實例不使用加密隨機(jī)種子,除非 System#getProperty java.util.secureRandomSeed 設(shè)置為 true。
構(gòu)造函數(shù)摘要
| 構(gòu)造函數(shù) | 描述 |
|---|---|
| SplittableRandom() | 創(chuàng)建一個新的 SplittableRandom 實例,該實例可能生成在統(tǒng)計上獨立于當(dāng)前程序中任何其他實例的值序列; 并且可能并且通常確實會因程序調(diào)用而異。 |
| SplittableRandom(long seed) | 使用指定的初始種子創(chuàng)建一個新的 SplittableRandom 實例。 |
方法總結(jié)
| 修飾符和類型 | 方法 | 描述 |
|---|---|---|
| DoubleStream | doubles() | 從這個生成器和/或從它的一個拆分返回一個有效無限的偽隨機(jī)雙值流; 每個值都介于零(包括)和一(不包括)之間。 |
| DoubleStream | doubles(double randomNumberOrigin, double randomNumberBound) | 從這個生成器和/或從它的一個拆分返回一個有效無限的偽隨機(jī)雙值流; 每個值都符合給定的原點(包括)和綁定(不包括)。 |
| DoubleStream | doubles(long streamSize) | 返回一個流,該流產(chǎn)生給定的 streamSize 數(shù)量的偽隨機(jī)雙精度值,從這個生成器和/或一個拆分; 每個值都介于零(包括)和一(不包括)之間。 |
| DoubleStream | doubles(long streamSize, double randomNumberOrigin, double randomNumberBound) | 返回一個流,該流產(chǎn)生給定的 streamSize 數(shù)量的偽隨機(jī)雙精度值,從這個生成器和/或一個拆分; 每個值都符合給定的原點(包括)和綁定(不包括)。 |
| IntStream | ints() | 從這個生成器和/或從它的一個拆分返回一個有效無限的偽隨機(jī) int 值流。 |
| IntStream | ints(int randomNumberOrigin, int randomNumberBound) | 從這個生成器和/或從它的一個拆分返回一個有效無限的偽隨機(jī) int 值流; 每個值都符合給定的原點(包括)和綁定(不包括)。 |
| IntStream | ints(long streamSize) | 返回一個流,該流產(chǎn)生給定的 streamSize 數(shù)量的偽隨機(jī) int 值,從這個生成器和/或從中拆分出來。 |
| IntStream | ints(long streamSize, int randomNumberOrigin, int randomNumberBound) | 返回一個流,該流產(chǎn)生給定的 streamSize 數(shù)量的偽隨機(jī) int 值,從這個生成器和/或從它的一個拆分; 每個值都符合給定的原點(包括)和綁定(不包括)。 |
| LongStream | longs() | 從這個生成器和/或從它的一個拆分返回一個有效無限的偽隨機(jī)長值流。 |
| LongStream | longs(long streamSize) | 返回一個流,該流產(chǎn)生給定的 streamSize 數(shù)量的偽隨機(jī) long 值,從這個生成器和/或從它的一個拆分。 |
| LongStream | longs(long randomNumberOrigin, long randomNumberBound) | 從這個生成器和/或從它的一個拆分返回一個有效無限的偽隨機(jī)長值流; 每個值都符合給定的原點(包括)和綁定(不包括)。 |
| LongStream | longs(long streamSize, long randomNumberOrigin, long randomNumberBound) | 返回一個流,該流產(chǎn)生給定的 streamSize 數(shù)量的偽隨機(jī)長值,從這個生成器和/或從中拆分出來; 每個值都符合給定的原點(包括)和綁定(不包括)。 |
| boolean | nextBoolean() | 返回一個偽隨機(jī)布爾值。 |
| double | nextDouble() | 返回零(包括)和一(不包括)之間的偽隨機(jī)雙精度值。 |
| double | nextDouble(double bound) | 返回介于 0.0(包括)和指定邊界(不包括)之間的偽隨機(jī)雙精度值。 |
| double | nextDouble(double origin, double bound) | 返回指定原點(包括)和邊界(不包括)之間的偽隨機(jī)雙精度值。 |
| int | nextInt() | 返回一個偽隨機(jī) int 值。 |
| int | nextInt(int bound) | 返回零(包括)和指定邊界(不包括)之間的偽隨機(jī) int 值。 |
| int | nextInt(int origin, int bound) | 返回指定原點(包括)和指定邊界(不包括)之間的偽隨機(jī) int 值。 |
| long | nextLong() | 返回一個偽隨機(jī)長值。 |
| long | nextLong(long bound) | 返回零(包括)和指定邊界(不包括)之間的偽隨機(jī)長值。 |
| long | nextLong(long origin, long bound) | 返回指定原點(包括)和指定邊界(不包括)之間的偽隨機(jī)長值。 |
| SplittableRandom | split() | 構(gòu)造并返回一個新的 SplittableRandom 實例,該實例不與此實例共享可變狀態(tài)。 |
| 從類 java.lang.Object 繼承的方法 |
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
構(gòu)造函數(shù)詳細(xì)信息
SplittableRandom
public SplittableRandom(long seed)
使用指定的初始種子創(chuàng)建一個新的 SplittableRandom 實例。 在同一程序中使用相同種子創(chuàng)建的 SplittableRandom 實例會生成相同的值序列。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| seed | 最初的種子 |
SplittableRandom
public SplittableRandom()
創(chuàng)建一個新的 SplittableRandom 實例,該實例可能生成在統(tǒng)計上獨立于當(dāng)前程序中任何其他實例的值序列; 并且可能并且通常確實會因程序調(diào)用而異。
方法詳情
split
public SplittableRandom split()
構(gòu)造并返回一個新的 SplittableRandom 實例,該實例不與此實例共享可變狀態(tài)。 但是,兩個對象共同生成的值集具有非常高的概率具有相同的統(tǒng)計屬性,就好像單個線程使用單個 SplittableRandom 對象生成相同數(shù)量的值一樣。 可以使用 split() 方法進(jìn)一步拆分兩個對象中的一個或兩個,并且相同的預(yù)期統(tǒng)計屬性適用于通過這種遞歸拆分構(gòu)造的整個生成器集。
返回:
新的 SplittableRandom 實例
nextInt
public int nextInt()
返回一個偽隨機(jī) int 值。
返回:
一個偽隨機(jī) int 值
nextInt
public int nextInt(int bound)
返回零(包括)和指定邊界(不包括)之間的偽隨機(jī) int 值。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| bound | 上限(不包括)。 必須是積極的。 |
返回:
零(包括)和邊界(不包括)之間的偽隨機(jī) int 值
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IllegalArgumentException | 如果 bound 不是正數(shù) |
nextInt
public int nextInt(int origin, int bound)
返回指定原點(包括)和指定邊界(不包括)之間的偽隨機(jī) int 值。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| origin | 返回的最小值 |
| bound | 上限(不包括) |
返回:
原點(包括)和邊界(不包括)之間的偽隨機(jī) int 值
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IllegalArgumentException | 如果 origin 大于或等于 bound |
nextLong
public long nextLong()
返回一個偽隨機(jī)長值。
返回:
偽隨機(jī)長值
nextLong
public long nextLong(long bound)
返回零(包括)和指定邊界(不包括)之間的偽隨機(jī)長值。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| bound | 上限(不包括)。 必須是積極的。 |
返回:
零(包括)和邊界(不包括)之間的偽隨機(jī)長值
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IllegalArgumentException | 如果 bound 不是正數(shù) |
nextLong
public long nextLong(long origin, long bound)
返回指定原點(包括)和指定邊界(不包括)之間的偽隨機(jī)長值。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| origin | 返回的最小值 |
| bound | 上限(不包括) |
返回:
原點(包括)和邊界(不包括)之間的偽隨機(jī)長值
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IllegalArgumentException | 如果 origin 大于或等于 bound |
nextDouble
public double nextDouble()
返回零(包括)和一(不包括)之間的偽隨機(jī)雙精度值。
返回:
零(包括)和一(不包括)之間的偽隨機(jī)雙精度值
nextDouble
public double nextDouble(double bound)
返回介于 0.0(包括)和指定邊界(不包括)之間的偽隨機(jī)雙精度值。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| bound | 上限(不包括)。 必須是積極的。 |
返回:
零(包括)和邊界(不包括)之間的偽隨機(jī)雙精度值
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IllegalArgumentException | 如果 bound 不是正數(shù) |
nextDouble
public double nextDouble(double origin, double bound)
返回指定原點(包括)和邊界(不包括)之間的偽隨機(jī)雙精度值。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| origin | 返回的最小值 |
| bound | 上限(不包括) |
返回:
原點(包括)和邊界(不包括)之間的偽隨機(jī)雙精度值
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IllegalArgumentException | 如果 origin 大于或等于 bound |
nextBoolean
public boolean nextBoolean()
返回一個偽隨機(jī)布爾值。
返回:
一個偽隨機(jī)布爾值
ints
public IntStream ints(long streamSize)
返回一個流,該流產(chǎn)生給定的 streamSize 數(shù)量的偽隨機(jī) int 值,從這個生成器和/或從中拆分出來。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| streamSize | 要生成的值的數(shù)量 |
返回:
偽隨機(jī) int 值流
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IllegalArgumentException | 如果 streamSize 小于零 |
ints
public IntStream ints()
從這個生成器和/或從它的一個拆分返回一個有效無限的偽隨機(jī) int 值流。
返回:
偽隨機(jī) int 值流
ints
public IntStream ints(long streamSize, int randomNumberOrigin, int randomNumberBound)
返回一個流,該流產(chǎn)生給定的 streamSize 數(shù)量的偽隨機(jī) int 值,從這個生成器和/或從它的一個拆分; 每個值都符合給定的原點(包括)和綁定(不包括)。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| streamSize | 要生成的值的數(shù)量 |
| randomNumberOrigin | 每個隨機(jī)值的原點(包括) |
| randomNumberBound | 每個隨機(jī)值的界限(不包括) |
返回:
一個偽隨機(jī) int 值流,每個值都具有給定的原點(包括)和邊界(不包括)
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IllegalArgumentException | 如果 streamSize 小于零,或者 randomNumberOrigin 大于或等于 randomNumberBound |
ints
public IntStream ints(int randomNumberOrigin, int randomNumberBound)
從這個生成器和/或從它的一個拆分返回一個有效無限的偽隨機(jī) int 值流; 每個值都符合給定的原點(包括)和綁定(不包括)。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| randomNumberOrigin | 每個隨機(jī)值的原點(包括) |
| randomNumberBound | 每個隨機(jī)值的界限(不包括) |
返回:
一個偽隨機(jī) int 值流,每個值都具有給定的原點(包括)和邊界(不包括)
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IllegalArgumentException | 如果 randomNumberOrigin 大于或等于 randomNumberBound |
longs
public LongStream longs(long streamSize)
返回一個流,該流產(chǎn)生給定的 streamSize 數(shù)量的偽隨機(jī) long 值,從這個生成器和/或從它的一個拆分。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| streamSize | 要生成的值的數(shù)量 |
返回:
偽隨機(jī)長值流
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IllegalArgumentException | 如果 streamSize 小于零 |
longs
public LongStream longs()
從這個生成器和/或從它的一個拆分返回一個有效無限的偽隨機(jī)長值流。
返回:
偽隨機(jī)長值流
longs
public LongStream longs(long streamSize, long randomNumberOrigin, long randomNumberBound)
返回一個流,該流產(chǎn)生給定的 streamSize 數(shù)量的偽隨機(jī)長值,從這個生成器和/或從中拆分出來; 每個值都符合給定的原點(包括)和綁定(不包括)。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| streamSize | 要生成的值的數(shù)量 |
| randomNumberOrigin | 每個隨機(jī)值的原點(包括) |
| randomNumberBound | 每個隨機(jī)值的界限(不包括) |
返回:
一個偽隨機(jī)長值流,每個值都具有給定的原點(包括)和邊界(不包括)
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IllegalArgumentException | 如果 streamSize 小于零,或者 randomNumberOrigin 大于或等于 randomNumberBound |
longs
public LongStream longs(long randomNumberOrigin, long randomNumberBound)
從這個生成器和/或從它的一個拆分返回一個有效無限的偽隨機(jī)長值流; 每個值都符合給定的原點(包括)和綁定(不包括)。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| randomNumberOrigin | 每個隨機(jī)值的原點(包括) |
| randomNumberBound | 每個隨機(jī)值的界限(不包括) |
返回:
一個偽隨機(jī)長值流,每個值都具有給定的原點(包括)和邊界(不包括)
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IllegalArgumentException | 如果 randomNumberOrigin 大于或等于 randomNumberBound |
doubles
public DoubleStream doubles(long streamSize)
返回一個流,該流產(chǎn)生給定的 streamSize 數(shù)量的偽隨機(jī)雙精度值,從這個生成器和/或一個拆分; 每個值都介于零(包括)和一(不包括)之間。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| streamSize | 要生成的值的數(shù)量 |
返回:
雙值流
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IllegalArgumentException | 如果 streamSize 小于零 |
doubles
public DoubleStream doubles()
從這個生成器和/或從它的一個拆分返回一個有效無限的偽隨機(jī)雙值流; 每個值都介于零(包括)和一(不包括)之間。
返回:
偽隨機(jī)雙值流
doubles
public DoubleStream doubles(long streamSize, double randomNumberOrigin, double randomNumberBound)
返回一個流,該流產(chǎn)生給定的 streamSize 數(shù)量的偽隨機(jī)雙精度值,從這個生成器和/或一個拆分; 每個值都符合給定的原點(包括)和綁定(不包括)。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| streamSize | 要生成的值的數(shù)量 |
| randomNumberOrigin | 每個隨機(jī)值的原點(包括) |
| randomNumberBound | 每個隨機(jī)值的界限(不包括) |
返回:
一個偽隨機(jī)雙值流,每個都有給定的原點(包括)和邊界(不包括)
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IllegalArgumentException | 如果 streamSize 小于零 |
| IllegalArgumentException | 如果 randomNumberOrigin 大于或等于 randomNumberBound |
doubles
public DoubleStream doubles(double randomNumberOrigin, double randomNumberBound)
從這個生成器和/或從它的一個拆分返回一個有效無限的偽隨機(jī)雙值流; 每個值都符合給定的原點(包括)和綁定(不包括)。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| randomNumberOrigin | 每個隨機(jī)值的原點(包括) |
| randomNumberBound | 每個隨機(jī)值的界限(不包括) |
返回:
一個偽隨機(jī)雙值流,每個都有給定的原點(包括)和邊界(不包括)
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IllegalArgumentException | 如果 randomNumberOrigin 大于或等于 randomNumberBound |
新聞標(biāo)題:創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OSSplittableRandom
鏈接地址:http://m.5511xx.com/article/copsijo.html


咨詢
建站咨詢
