- すべてのスーパー・インタフェース:
RandomGenerator
,RandomGenerator.StreamableGenerator
- 既知のすべての実装クラス:
SplittableRandom
- 含まれているインタフェース:
RandomGenerator
public static interface RandomGenerator.SplittableGenerator extends RandomGenerator.StreamableGenerator
このインタフェースは、擬似乱数値の順序を生成するオブジェクトに共通プロトコルを提供するように設計されており、それぞれ(元のものと新しいもの)という2つのオブジェクトに「分割」で、同じプロトコル(したがって、無期限に再帰的に分割できます)に従うことができます。
理想的には、1つの元のRandomGenerator.SplittableGenerator
オブジェクトからの再帰的分割によって生成されたすべてのRandomGenerator.SplittableGenerator
オブジェクトは、統計的に相互に独立しており、個別に均一です。 したがって、このようなオブジェクトのセットによって集合的に生成される値のセットは、単一のRandomGenerator.SplittableGenerator
オブジェクトを使用して、同じ数量の値が単一のスレッドによって生成された場合と同じ統計プロパティを持つことを期待します。 実際には、ある程度の近似で独立性と均一性を決める必要があります。
単一の分割操作を実行し、元の(反復分割または再帰分割、または組合せ)から分割されたジェネレータのストリームを生成するために、メソッドが用意されています。
RandomGenerator.SplittableGenerator
を実装するオブジェクトは通常、暗号方式ではセキュアではありません。 セキュリティ保護を必要とするアプリケーションで使用するために安全な暗号化の施された擬似乱数ジェネレータを取得するには、代わりにSecureRandom
を使用することを検討してください。
-
ネストされたクラスのサマリー
インタフェースjava.util.random.RandomGeneratorで宣言されたネストされたクラス/インタフェース
RandomGenerator.ArbitrarilyJumpableGenerator, RandomGenerator.JumpableGenerator, RandomGenerator.LeapableGenerator, RandomGenerator.SplittableGenerator, RandomGenerator.StreamableGenerator
-
メソッドのサマリー
修飾子と型メソッド説明name
algorithmを利用するRandomGenerator.SplittableGenerator
のインスタンスを返します。default Stream<RandomGenerator>
rngs()
RandomGenerator
インタフェースを実装する新しい擬似乱数ジェネレータの実質的に無制限のストリームを返します。default Stream<RandomGenerator>
rngs
(long streamSize) RandomGenerator
インタフェースを実装する新しい擬似乱数ジェネレータの特定のstreamSize
数を生成するストリームを返します。split()
RandomGenerator
およびRandomGenerator.SplittableGenerator
インタフェースを実装する、この番号から分割された新しい擬似乱数ジェネレータを返します。RandomGenerator
およびRandomGenerator.SplittableGenerator
インタフェースを実装する、この番号から分割された新しい擬似乱数ジェネレータを返します。splits()
RandomGenerator.SplittableGenerator
インタフェースを実装する新しい擬似乱数ジェネレータの実質的に無制限のストリームを返します。splits
(long streamSize) RandomGenerator.SplittableGenerator
インタフェースを実装する新しい擬似乱数ジェネレータの特定のstreamSize
数を生成するストリームを返します。splits
(long streamSize, RandomGenerator.SplittableGenerator source) RandomGenerator.SplittableGenerator
インタフェースを実装する新しい擬似乱数ジェネレータの特定のstreamSize
数を生成するストリームを返します。RandomGenerator.SplittableGenerator
インタフェースを実装する新しい擬似乱数ジェネレータの実質的に無制限のストリームを返します。インタフェースjava.util.random.RandomGeneratorで宣言されたメソッド
doubles, doubles, doubles, doubles, ints, ints, ints, ints, isDeprecated, longs, longs, longs, longs, nextBoolean, nextBytes, nextDouble, nextDouble, nextDouble, nextExponential, nextFloat, nextFloat, nextFloat, nextGaussian, nextGaussian, nextInt, nextInt, nextInt, nextLong, nextLong, nextLong
-
メソッドの詳細
-
of
static RandomGenerator.SplittableGenerator of(String name) name
algorithmを利用するRandomGenerator.SplittableGenerator
のインスタンスを返します。- パラメータ:
name
- 乱数ジェネレータの名前algorithm- 戻り値:
RandomGenerator.SplittableGenerator
のインスタンス- 例外:
NullPointerException
- nameがnullである場合IllegalArgumentException
- 指定されたアルゴリズムが見つからない場合
-
split
RandomGenerator
およびRandomGenerator.SplittableGenerator
インタフェースを実装する、この番号から分割された新しい擬似乱数ジェネレータを返します。この擬似乱数ジェネレータは、新しいものの状態の初期化に使用される擬似乱数ビットのソースとして使用できます。
- 戻り値:
- a new object that implements the
RandomGenerator
andRandomGenerator.SplittableGenerator
interfaces
-
split
RandomGenerator
およびRandomGenerator.SplittableGenerator
インタフェースを実装する、この番号から分割された新しい擬似乱数ジェネレータを返します。- パラメータ:
source
- このインスタンスのかわりに、新しいインスタンスの状態を初期化するために使用される擬似乱数・ビットのソースとして使用されるRandomGenerator.SplittableGenerator
インスタンス。- 戻り値:
- an object that implements the
RandomGenerator
andRandomGenerator.SplittableGenerator
interfaces - 例外:
NullPointerException
- sourceがnullである場合
-
splits
default Stream<RandomGenerator.SplittableGenerator> splits()RandomGenerator.SplittableGenerator
インタフェースを実装する新しい擬似乱数ジェネレータの実質的に無制限のストリームを返します。この擬似乱数ジェネレータは、新しい状態の初期化に使用される擬似乱数ビットのソースとして使用できます。
- 実装要件:
- デフォルトの実装では、
splits(this)
が起動します。 - 実装上のノート:
- このメソッドは、
splits
(Long.MAX_VALUE
)と同等の方法で実装できます。 - 戻り値:
RandomGenerator.SplittableGenerator
オブジェクトのストリーム
-
splits
Stream<RandomGenerator.SplittableGenerator> splits(long streamSize) RandomGenerator.SplittableGenerator
インタフェースを実装する新しい擬似乱数ジェネレータの特定のstreamSize
数を生成するストリームを返します。この擬似乱数ジェネレータは、新しい状態の初期化に使用される擬似乱数ビットのソースとして使用できます。
- パラメータ:
streamSize
- 生成する値の数- 戻り値:
RandomGenerator.SplittableGenerator
オブジェクトのストリーム- 例外:
IllegalArgumentException
-streamSize
が0未満の場合
-
splits
RandomGenerator.SplittableGenerator
インタフェースを実装する新しい擬似乱数ジェネレータの実質的に無制限のストリームを返します。- 実装上のノート:
- このメソッドは、
splits
(Long.MAX_VALUE
, source)と同等の方法で実装できます。 - パラメータ:
source
- このインスタンスのかわりに、新しいインスタンスの状態を初期化するために使用される擬似乱数・ビットのソースとして使用されるRandomGenerator.SplittableGenerator
インスタンス。- 戻り値:
RandomGenerator.SplittableGenerator
オブジェクトのストリーム- 例外:
NullPointerException
- sourceがnullである場合
-
splits
Stream<RandomGenerator.SplittableGenerator> splits(long streamSize, RandomGenerator.SplittableGenerator source) RandomGenerator.SplittableGenerator
インタフェースを実装する新しい擬似乱数ジェネレータの特定のstreamSize
数を生成するストリームを返します。- パラメータ:
streamSize
- 生成する値の数source
- このインスタンスのかわりに、新しいインスタンスの状態を初期化するために使用される擬似乱数・ビットのソースとして使用されるRandomGenerator.SplittableGenerator
インスタンス。- 戻り値:
RandomGenerator.SplittableGenerator
オブジェクトのストリーム- 例外:
IllegalArgumentException
-streamSize
が0未満の場合NullPointerException
- sourceがnullである場合
-
rngs
default Stream<RandomGenerator> rngs()RandomGenerator
インタフェースを実装する新しい擬似乱数ジェネレータの実質的に無制限のストリームを返します。 理想的には、ストリームのジェネレータは統計的に独立しているように見えます。- 定義:
- インタフェース
RandomGenerator.StreamableGenerator
内のrngs
- 実装要件:
- デフォルトの実装では、
splits
()をコールします。 - 戻り値:
RandomGenerator
インタフェースを実装するオブジェクトのストリーム
-
rngs
default Stream<RandomGenerator> rngs(long streamSize) RandomGenerator
インタフェースを実装する新しい擬似乱数ジェネレータの特定のstreamSize
数を生成するストリームを返します。 理想的には、ストリームのジェネレータは統計的に独立しているように見えます。- 定義:
- インタフェース
RandomGenerator.StreamableGenerator
内のrngs
- 実装要件:
- デフォルトの実装では、
splits
(streamSize)をコールします。 - パラメータ:
streamSize
- 生成するジェネレータの数- 戻り値:
RandomGenerator
インタフェースを実装するオブジェクトのストリーム- 例外:
IllegalArgumentException
-streamSize
が0未満の場合
-