Random (クラス)
public abstract Random {inherits Serializable}
パッケージ: CURL.LANGUAGE.MATH
直接継承しているサブクラス: AdditiveRandom, LinearRandom, RolledRandom

擬似乱数ジェネレータの抽象インターフェイス クラス。

実装クラスによって、特定の擬似乱数プロパティが決定されます。

すべての Random 派生クラスは、シリアル化可能ですが、純粋に内部の数学状態を持つクラスだけが、シリアル化で、またすべてのプラットフォームにわたって同じシーケンスを生成します。


コンストラクタ
default:これは抽象クラスです。この型の新しいオブジェクトの作成のリクエストは、Random.default#factory によって処理されます。
コンストラクタ public {Random.default}
default:最も一般的に適用できる型 (現在は LinearRandom) の新しい擬似乱数ジェネレータを作成します。
ファクトリ public {Random.default seed:int32 = 0}:Random

メソッド
clone:現在の擬似乱数ジェネレータのクローンを作成します。
public abstract {Random.clone}:Random
next-float:[0.0,1.0] の範囲の浮動数としてスケールを変えられた、擬似乱数列での次の数を返します。
public final inline {Random.next-float}:float
next-in-range:指定した範囲内の整数としてスケールを変えられた、擬似乱数列での次の要素を返します。
public final {Random.next-in-range min:int32, max:int32}:int32
next-int16:[min-int16,max-int16] の範囲内の整数としてスケールを変えられた、擬似乱数列での次の数を返します。
public final inline {Random.next-int16}:int16
next-int32:[min-int32,max-int32] の範囲内の整数としてスケールを変えられた、擬似乱数列での次の数を返します。
public abstract {Random.next-int32}:int32
next-int8:[min-int8,max-int8] の範囲内の整数としてスケールを変えられた、擬似乱数列での次の数を返します。
public final inline {Random.next-int8}:int8
next-non-negative-int16:[0,max-int16] の範囲内の整数としてスケールを変えられた、擬似乱数列での次の数を返します。
public final inline {Random.next-non-negative-int16}:int16
next-non-negative-int32:[0,max-int32] の範囲内の整数としてスケールを変えられた、擬似乱数列での次の数を返します。
public final inline {Random.next-non-negative-int32}:int32
next-non-negative-int8:[0,max-int8] の範囲内の整数としてスケールを変えられた、擬似乱数列での次の数を返します。
public final inline {Random.next-non-negative-int8}:int8
next-uint16:[0,max-int16] の範囲内の整数としてスケールを変えられた、擬似乱数列での次の数を返します。
public final inline {Random.next-uint16}:uint16
next-uint8:[0,max-int8] の範囲内の整数としてスケールを変えられた、擬似乱数列での次の数を返します。
public final inline {Random.next-uint8}:uint8
メソッド 継承 Object: object-describe, object-describe-for-debugging, object-serialize



コンストラクタ詳細
default (コンストラクタ)
public {Random.default}

これは抽象クラスです。この型の新しいオブジェクトの作成のリクエストは、Random.default#factory によって処理されます。



default (ファクトリ)
public {Random.default seed:int32 = 0}:Random

最も一般的に適用できる型 (現在は LinearRandom) の新しい擬似乱数ジェネレータを作成します。

seed: LinearRandom.default を参照してください。






メソッド詳細
clone (メソッド)
public abstract {Random.clone}:Random

現在の擬似乱数ジェネレータのクローンを作成します。

説明

派生クラスは、そのクラスの clone-from コンストラクタを呼び出すクローン実装を提供する必要があります。

クローン化されるときに、すべてのジェネレータが、同一シーケンスの提供を保証するわけではありません。Random から定義されるクラスのクローン化の意味は、それらのクラスのドキュメントに記述されています。


next-float (メソッド)
public final inline {Random.next-float}:float

[0.0,1.0] の範囲の浮動数としてスケールを変えられた、擬似乱数列での次の数を返します。



next-in-range (メソッド)
public final {Random.next-in-range min:int32, max:int32}:int32

指定した範囲内の整数としてスケールを変えられた、擬似乱数列での次の要素を返します。

min: 返されるのは最小の整数です。
max: 返されるのは最大の整数です。

説明

このルーチンは、さいころを転がす、または他の任意の範囲内で発生する整数イベントをシミュレートする意味があります。

スケール変更を実行する方法のために、min と max の差が増加するにつれて、分布が均一でなくなる傾向にあります。これらの人為的な結果を避けるには、代わりにサンプリングを使用します。

ステートフル バージョンについては、RolledRandom.next-roll を参照してください。


next-int16 (メソッド)
public final inline {Random.next-int16}:int16

[min-int16,max-int16] の範囲内の整数としてスケールを変えられた、擬似乱数列での次の数を返します。



next-int32 (メソッド)
public abstract {Random.next-int32}:int32

[min-int32,max-int32] の範囲内の整数としてスケールを変えられた、擬似乱数列での次の数を返します。

説明

派生クラスは、next-int のそれ自体の実装を提供する必要があります。その他すべての標準メソッドは、next-int に対する変換として実装されます。


next-int8 (メソッド)
public final inline {Random.next-int8}:int8

[min-int8,max-int8] の範囲内の整数としてスケールを変えられた、擬似乱数列での次の数を返します。



next-non-negative-int16 (メソッド)
public final inline {Random.next-non-negative-int16}:int16

[0,max-int16] の範囲内の整数としてスケールを変えられた、擬似乱数列での次の数を返します。



next-non-negative-int32 (メソッド)
public final inline {Random.next-non-negative-int32}:int32

[0,max-int32] の範囲内の整数としてスケールを変えられた、擬似乱数列での次の数を返します。



next-non-negative-int8 (メソッド)
public final inline {Random.next-non-negative-int8}:int8

[0,max-int8] の範囲内の整数としてスケールを変えられた、擬似乱数列での次の数を返します。



next-uint16 (メソッド)
public final inline {Random.next-uint16}:uint16

[0,max-int16] の範囲内の整数としてスケールを変えられた、擬似乱数列での次の数を返します。



next-uint8 (メソッド)
public final inline {Random.next-uint8}:uint8

[0,max-int8] の範囲内の整数としてスケールを変えられた、擬似乱数列での次の数を返します。