- すべてのスーパー・インタフェース:
- 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
- 
メソッドのサマリー修飾子と型メソッド説明namealgorithmを利用する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
- 
メソッドの詳細- 
ofstatic RandomGenerator.SplittableGenerator of(String name) namealgorithmを利用するRandomGenerator.SplittableGeneratorのインスタンスを返します。- パラメータ:
- name- 乱数ジェネレータの名前algorithm
- 戻り値:
- RandomGenerator.SplittableGeneratorのインスタンス
- 例外:
- NullPointerException- nameがnullである場合
- IllegalArgumentException- 指定されたアルゴリズムが見つからない場合
 
- 
splitRandomGeneratorおよびRandomGenerator.SplittableGeneratorインタフェースを実装する、この番号から分割された新しい擬似乱数ジェネレータを返します。この擬似乱数ジェネレータは、新しいものの状態の初期化に使用される擬似乱数ビットのソースとして使用できます。 - 戻り値:
- a new object that implements the RandomGeneratorandRandomGenerator.SplittableGeneratorinterfaces
 
- 
splitRandomGeneratorおよびRandomGenerator.SplittableGeneratorインタフェースを実装する、この番号から分割された新しい擬似乱数ジェネレータを返します。- パラメータ:
- source- このインスタンスのかわりに、新しいインスタンスの状態を初期化するために使用される擬似乱数・ビットのソースとして使用される- RandomGenerator.SplittableGeneratorインスタンス。
- 戻り値:
- an object that implements the RandomGeneratorandRandomGenerator.SplittableGeneratorinterfaces
- 例外:
- NullPointerException- sourceがnullである場合
 
- 
splitsdefault Stream<RandomGenerator.SplittableGenerator> splits()RandomGenerator.SplittableGeneratorインタフェースを実装する新しい擬似乱数ジェネレータの実質的に無制限のストリームを返します。この擬似乱数ジェネレータは、新しい状態の初期化に使用される擬似乱数ビットのソースとして使用できます。 - 実装要件:
- デフォルトの実装では、splits(this)が起動します。
- 実装上のノート:
- このメソッドは、splits(Long.MAX_VALUE)と同等の方法で実装できます。
- 戻り値:
- RandomGenerator.SplittableGeneratorオブジェクトのストリーム
 
- 
splitsStream<RandomGenerator.SplittableGenerator> splits(long streamSize) RandomGenerator.SplittableGeneratorインタフェースを実装する新しい擬似乱数ジェネレータの特定のstreamSize数を生成するストリームを返します。この擬似乱数ジェネレータは、新しい状態の初期化に使用される擬似乱数ビットのソースとして使用できます。 - パラメータ:
- streamSize- 生成する値の数
- 戻り値:
- RandomGenerator.SplittableGeneratorオブジェクトのストリーム
- 例外:
- IllegalArgumentException-- streamSizeが0未満の場合
 
- 
splitsRandomGenerator.SplittableGeneratorインタフェースを実装する新しい擬似乱数ジェネレータの実質的に無制限のストリームを返します。- 実装上のノート:
- このメソッドは、splits(Long.MAX_VALUE, source)と同等の方法で実装できます。
- パラメータ:
- source- このインスタンスのかわりに、新しいインスタンスの状態を初期化するために使用される擬似乱数・ビットのソースとして使用される- RandomGenerator.SplittableGeneratorインスタンス。
- 戻り値:
- RandomGenerator.SplittableGeneratorオブジェクトのストリーム
- 例外:
- NullPointerException- sourceがnullである場合
 
- 
splitsStream<RandomGenerator.SplittableGenerator> splits(long streamSize, RandomGenerator.SplittableGenerator source) RandomGenerator.SplittableGeneratorインタフェースを実装する新しい擬似乱数ジェネレータの特定のstreamSize数を生成するストリームを返します。- パラメータ:
- streamSize- 生成する値の数
- source- このインスタンスのかわりに、新しいインスタンスの状態を初期化するために使用される擬似乱数・ビットのソースとして使用される- RandomGenerator.SplittableGeneratorインスタンス。
- 戻り値:
- RandomGenerator.SplittableGeneratorオブジェクトのストリーム
- 例外:
- IllegalArgumentException-- streamSizeが0未満の場合
- NullPointerException- sourceがnullである場合
 
- 
rngsdefault Stream<RandomGenerator> rngs()RandomGeneratorインタフェースを実装する新しい擬似乱数ジェネレータの実質的に無制限のストリームを返します。 理想的には、ストリームのジェネレータは統計的に独立しているように見えます。- 定義:
- インタフェースRandomGenerator.StreamableGenerator内のrngs
- 実装要件:
- デフォルトの実装では、splits()をコールします。
- 戻り値:
- RandomGeneratorインタフェースを実装するオブジェクトのストリーム
 
- 
rngsdefault Stream<RandomGenerator> rngs(long streamSize) RandomGeneratorインタフェースを実装する新しい擬似乱数ジェネレータの特定のstreamSize数を生成するストリームを返します。 理想的には、ストリームのジェネレータは統計的に独立しているように見えます。- 定義:
- インタフェースRandomGenerator.StreamableGenerator内のrngs
- 実装要件:
- デフォルトの実装では、splits(streamSize)をコールします。
- パラメータ:
- streamSize- 生成するジェネレータの数
- 戻り値:
- RandomGeneratorインタフェースを実装するオブジェクトのストリーム
- 例外:
- IllegalArgumentException-- streamSizeが0未満の場合
 
 
-