インタフェースRandomGenerator.SplittableGenerator
- すべてのスーパー・インタフェース:
RandomGenerator, RandomGenerator.StreamableGenerator
- 既知のすべての実装クラス:
SplittableRandom
- 含まれているインタフェース:
RandomGenerator
public static interface RandomGenerator.SplittableGenerator extends RandomGenerator.StreamableGenerator
このインタフェースは、擬似乱数値の順序を生成するオブジェクトに共通プロトコルを提供するように設計されており、それぞれ(元のものと新しいもの)という2つのオブジェクトに「分割」で、同じプロトコル(したがって、無期限に再帰的に分割できます)に従うことができます。
理想的には、1つの元のRandomGenerator.SplittableGeneratorオブジェクトからの再帰的分割によって生成されたすべてのRandomGenerator.SplittableGeneratorオブジェクトは、統計的に相互に独立しており、個別に均一です。 したがって、このようなオブジェクトのセットによって集合的に生成される値のセットは、単一のRandomGenerator.SplittableGeneratorオブジェクトを使用して、同じ数量の値が単一のスレッドによって生成された場合と同じ統計プロパティを持つことを期待します。 実際には、ある程度の近似で独立性と均一性を決める必要があります。
単一の分割操作を実行し、元の(反復分割または再帰分割、または組合せ)から分割されたジェネレータのストリームを生成するために、メソッドが用意されています。
RandomGenerator.SplittableGeneratorを実装するオブジェクトは通常、暗号方式ではセキュアではありません。 かわりに、SecureRandomを使用して、セキュリティ依存アプリケーションで使用する暗号学的にセキュアな疑似乱数ジェネレータを取得することを検討してください。
- 導入されたバージョン:
- 17
-
ネストされたクラスのサマリー
インタフェースで宣言されたネストされたクラス/インタフェース RandomGenerator
RandomGenerator.ArbitrarilyJumpableGenerator, RandomGenerator.JumpableGenerator, RandomGenerator.LeapableGenerator, RandomGenerator.SplittableGenerator, RandomGenerator.StreamableGenerator修飾子と型インタフェース説明static interfaceこのインタフェースは、擬似乱数シーケンスを生成し、任意の量で簡単にjumpを状態サイクルの遠いポイントに送ることができるオブジェクトに共通のプロトコルを提供するように設計されています。static interfaceこのインタフェースは、擬似乱数値を生成するオブジェクトに共通のプロトコルを提供するように設計されており、状態サイクル内の離れた場所に適度な量(たとえば264)で簡単に前方にジャンプできます。static interfaceこのインタフェースは、擬似乱数シーケンスを生成するオブジェクトに共通のプロトコルを提供するように設計されており、その状態サイクルの非常に遠いポイントに簡単に前方にジャンプできるだけでなく、飛躍(たとえば、2128)することもできます。static interfaceこのインタフェースは、擬似乱数値の順序を生成するオブジェクトに共通プロトコルを提供するように設計されており、それぞれ(元のものと新しいもの)という2つのオブジェクトに「分割」で、同じプロトコル(したがって、無期限に再帰的に分割できます)に従うことができます。static interfaceRandomGenerator.StreamableGeneratorインタフェースは、RandomGeneratorインタフェースを補強して、RandomGeneratorオブジェクトのストリームを返すメソッドを提供します。 -
メソッドのサマリー
修飾子と型メソッド説明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インタフェースを実装する新しい擬似乱数ジェネレータの実質的に無制限のストリームを返します。インタフェースで宣言されたメソッド RandomGenerator
doubles, doubles, doubles, doubles, equiDoubles, 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修飾子と型メソッド説明default DoubleStreamdoubles()擬似乱数的に選択されたdouble値の実質的に無制限のストリームを返します。default DoubleStreamdoubles(double randomNumberOrigin, double randomNumberBound) 擬似乱数的に選択したdouble値の実質的に無制限のストリームを返します。各値は、指定された起点(包含)と指定された境界(除外)の間です。default DoubleStreamdoubles(long streamSize) 指定されたstreamSize数の擬似乱数的に選択したdouble値を生成するストリームを返します。default DoubleStreamdoubles(long streamSize, double randomNumberOrigin, double randomNumberBound) 擬似乱数的に選択したdouble値のstreamSize数を生成するストリームを返します。各値は、指定された起点(包含)と、指定された境界(除外)の間です。default DoubleStreamequiDoubles(double left, double right, boolean isLeftIncluded, boolean isRightIncluded) 疑似ランダムに選択されたdouble値の事実上無制限のストリームを返します。各値は、指定されたleft境界と指定されたright境界の間にあります。default IntStreamints()擬似乱数的に選択されたint値の実質的に無制限のストリームを返します。default IntStreamints(int randomNumberOrigin, int randomNumberBound) 擬似乱数的に選択したint値の実質的に無制限のストリームを返します。各値は、指定された起点(包含)と指定された境界(除外)の間です。default IntStreamints(long streamSize) 指定されたstreamSize数の擬似乱数的に選択したint値を生成するストリームを返します。default IntStreamints(long streamSize, int randomNumberOrigin, int randomNumberBound) 指定された擬似乱数的に選択したint値のstreamSize数を生成するストリームを返します。各値は、指定された起点(包含)と、指定された境界(除外)の間です。default booleanRandomGenerator (algorithm)の実装が非推奨としてマークされている場合はtrueを返します。default LongStreamlongs()擬似乱数的に選択されたlong値の実質的に無制限のストリームを返します。default LongStreamlongs(long streamSize) 指定されたstreamSize数の擬似乱数的に選択したlong値を生成するストリームを返します。default LongStreamlongs(long randomNumberOrigin, long randomNumberBound) 擬似乱数的に選択したlong値の実質的に無制限のストリームを返します。各値は、指定された起点(包含)と指定された境界(除外)の間です。default LongStreamlongs(long streamSize, long randomNumberOrigin, long randomNumberBound) 擬似乱数的に選択したlong値のstreamSize数を生成するストリームを返します。各値は、指定された起点(包含)と、指定された境界(除外)の間です。default boolean擬似乱数的に選択したboolean値を返します。default voidnextBytes(byte[] bytes) -128 (包含)と127 (包含)の間の値範囲から擬似乱数的に選択された一様なバイト値が生成されたユーザー指定のバイト配列になります。default double0 (これを含む)から1 (これを含まない)までの、擬似乱数のdouble値を返します。default doublenextDouble(double bound) ゼロ(包含)と指定した境界(除外)の間の擬似乱数的に選択したdouble値を返します。default doublenextDouble(double origin, double bound) 指定された起点(包含)と指定された境界(除外)の間の擬似乱数的に選択したdouble値を返します。default double平均が1である指数分布から擬似乱数的に選択された、負でないdouble値を返します。default float0(これを含む)から1(これを含まない)までの範囲で、擬似乱数のfloat値を返します。default floatnextFloat(float bound) ゼロ(包含)と指定したバインド(除外)の間の擬似乱数的に選択したfloat値を返します。default floatnextFloat(float origin, float bound) 指定された起点(包含)と指定された境界(除外)の間の擬似乱数的に選択したfloat値を返します。default double平均が0で、標準偏差が1であるガウス(正規)分布から擬似乱数的に選択されたdouble値を返します。default doublenextGaussian(double mean, double stddev) ガウス(正規)分布から擬似乱数的に選択されたdouble値を、引数で指定された平均偏差および標準偏差で返します。default intnextInt()擬似乱数的に選択したint値を返します。default intnextInt(int bound) ゼロ(包含)と指定した境界(除外)の間の擬似乱数的に選択したint値を返します。default intnextInt(int origin, int bound) 指定された起点(包含)と指定された境界(除外)の間の擬似乱数的に選択したint値を返します。longnextLong()擬似乱数的に選択したlong値を返します。default longnextLong(long bound) ゼロ(包含)と指定した境界(除外)の間の擬似乱数的に選択したlong値を返します。default longnextLong(long origin, long bound) 指定された起点(包含)と指定された境界(除外)の間の擬似乱数的に選択したlong値を返します。
-
メソッドの詳細
-
of
static RandomGenerator.SplittableGenerator of(String name) namealgorithmを利用するRandomGenerator.SplittableGeneratorのインスタンスを返します。- パラメータ:
name- 乱数ジェネレータの名前algorithm- 戻り値:
RandomGenerator.SplittableGeneratorのインスタンス- スロー:
NullPointerException- nameがnullである場合IllegalArgumentException- 指定されたアルゴリズムが見つからない場合
-
split
RandomGeneratorおよびRandomGenerator.SplittableGeneratorインタフェースを実装する、この番号から分割された新しい擬似乱数ジェネレータを返します。この擬似乱数ジェネレータは、新しいものの状態の初期化に使用される擬似乱数ビットのソースとして使用できます。
- 戻り値:
- a new object that implements the
RandomGeneratorandRandomGenerator.SplittableGeneratorinterfaces
-
split
RandomGeneratorおよびRandomGenerator.SplittableGeneratorインタフェースを実装する、この番号から分割された新しい擬似乱数ジェネレータを返します。- パラメータ:
source- このインスタンスのかわりに、新しいインスタンスの状態を初期化するために使用される擬似乱数・ビットのソースとして使用されるRandomGenerator.SplittableGeneratorインスタンス。- 戻り値:
- an object that implements the
RandomGeneratorandRandomGenerator.SplittableGeneratorinterfaces - スロー:
NullPointerException- ソースが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- ソースがnullの場合
-
splits
Stream<RandomGenerator.SplittableGenerator> splits(long streamSize, RandomGenerator.SplittableGenerator source) RandomGenerator.SplittableGeneratorインタフェースを実装する新しい擬似乱数ジェネレータの特定のstreamSize数を生成するストリームを返します。- パラメータ:
streamSize- 生成する値の数source- このインスタンスのかわりに、新しいインスタンスの状態を初期化するために使用される擬似乱数・ビットのソースとして使用されるRandomGenerator.SplittableGeneratorインスタンス。- 戻り値:
RandomGenerator.SplittableGeneratorオブジェクトのストリーム- スロー:
IllegalArgumentException-streamSizeが0未満の場合NullPointerException- ソースが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未満の場合
-