Language

Random クラス

定義

このクラスのインスタンスは、擬似乱数のストリームを生成するために使用されます。その期間はわずか2<アップ>48</sup>です。

[Android.Runtime.Register("java/util/Random", DoNotGenerateAcw=true)]
public class Random : Java.Lang.Object, IDisposable, Java.IO.ISerializable, Java.Util.RandomGenerators.IRandomGenerator
[<Android.Runtime.Register("java/util/Random", DoNotGenerateAcw=true)>]
type Random = class
    inherit Object
    interface ISerializable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface IRandomGenerator
継承
派生
属性
実装

注釈

このクラスのインスタンスは、擬似乱数のストリームを生成するために使用されます。その期間はわずか2<アップ>48</sup>です。 このクラスは 48 ビット シードを使用します。これは線形結合式を使用して変更されます。 (ドナルド・E・クヌス、 <引用>「コンピュータプログラミングの芸術」第2巻第3版「半数値アルゴリズム</引用>セクション 3.2.1 を参照)。

同じシードを使用して Random の 2 つのインスタンスが作成され、それぞれに対して同じメソッド呼び出しのシーケンスが行われると、同じ数のシーケンスが生成されて返されます。 このプロパティを保証するために、クラス Randomに特定のアルゴリズムが指定されます。 Java実装では、Javaコードの絶対的な移植性のために、クラス Randomに対してここに示されているすべてのアルゴリズムを使用する必要があります。 ただし、クラス Random のサブクラスは、すべてのメソッドの一般的なコントラクトに従っている限り、他のアルゴリズムを使用できます。

クラスによって実装されるアルゴリズム Random 、各呼び出しで最大 32 個の擬似ランダム生成ビットを提供できる protected ユーティリティ メソッドを使用します。

多くのアプリケーションでは、この方法 Math#random 簡単に使用できます。

java.util.Randomのインスタンスはスレッド セーフです。 ただし、スレッド間で同じ java.util.Random インスタンスを同時に使用すると、競合が発生し、パフォーマンスが低下する可能性があります。 代わりに、マルチスレッド 設計で java.util.concurrent.ThreadLocalRandom を使用することを検討してください。

java.util.Randomのインスタンスは、暗号化によってセキュリティで保護されていません。 代わりに、 java.security.SecureRandom を使用して、セキュリティで保護されたアプリケーションで使用する暗号的に安全な擬似乱数ジェネレーターを取得することを検討してください。

1.0 で追加されました。

Javaドキュメント。

このページの一部は、Androidオープンソースプロジェクトによって作成および共有された作業に基づく変更でありCreative Commons 2.5属性ライセンスに記載されている条件に従って使用されます。

コンストラクター

名前 説明
Random()

新しい乱数ジェネレーターを作成します。

Random(Int64)

1 つの long シードを使用して、新しい乱数ジェネレーターを作成します。

Random(IntPtr, JniHandleOwnership)

JNI オブジェクトのマネージド表現を作成するときに使用されるコンストラクター。ランタイムによって呼び出されます。

プロパティ

名前 説明
Class

この Objectのランタイム クラスを返します。

(継承元 Object)
Handle

基になる Android インスタンスへのハンドル。

(継承元 Object)
JniIdentityHashCode

相互運用ランタイムによってこのJava ピアに割り当てられた ID ハッシュ コードを取得します。

(継承元 Object)
JniManagedPeerState

このクラスのインスタンスは、擬似乱数のストリームを生成するために使用されます。その期間はわずか2<アップ>48</sup>です。

(継承元 JavaObject)
JniPeerMembers

このクラスのインスタンスは、擬似乱数のストリームを生成するために使用されます。その期間はわずか2<アップ>48</sup>です。

PeerReference

このJava ピアの JNI オブジェクト参照を取得します。

(継承元 Object)
ThresholdClass

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

ThresholdType

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

メソッド

名前 説明
Clone()

このオブジェクトのコピーを作成して返します。

(継承元 Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

このクラスのインスタンスは、擬似乱数のストリームを生成するために使用されます。その期間はわずか2<アップ>48</sup>です。

(継承元 JavaObject)
Dispose()

このJava ピアによって保持されているリソースを解放します。

(継承元 Object)
Dispose(Boolean)

このJava ピアによって保持されているリソースを解放します。

(継承元 Object)
DisposeUnlessReferenced()

このクラスのインスタンスは、擬似乱数のストリームを生成するために使用されます。その期間はわずか2<アップ>48</sup>です。

(継承元 JavaObject)
Equals(Object)

このクラスのインスタンスは、擬似乱数のストリームを生成するために使用されます。その期間はわずか2<アップ>48</sup>です。

(継承元 JavaObject)
Equals(Object)

他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。

(継承元 Object)
From(IRandomGenerator)

このクラスのインスタンスは、擬似乱数のストリームを生成するために使用されます。その期間はわずか2<アップ>48</sup>です。

GetHashCode()

オブジェクトのハッシュ コード値を返します。

(継承元 Object)
JavaFinalize()
古い.

オブジェクトへの参照がなくなったとガベージ コレクションによって判断されたときに、オブジェクトのガベージ コレクターによって呼び出されます。

(継承元 Object)
Next(Int32)

次の擬似乱数を生成します。

NextBoolean()

この乱数ジェネレーターのシーケンスから、次の擬似乱数 boolean 一様に分散された値を返します。

NextBytes(Byte[])

ランダム バイトを生成し、ユーザー指定のバイト配列に配置します。

NextDouble()

この乱数ジェネレーターのシーケンスから、doubleと0.0の間で一様に分散1.0次の擬似乱数値を返します。

NextFloat()

この乱数ジェネレーターのシーケンスから、floatと0.0の間で一様に分散1.0次の擬似乱数値を返します。

NextGaussian()

この乱数ジェネレーターのシーケンスからの平均doubleと標準偏差0.0を持つ、次の擬似乱数ガウス分布1.0値を返します。

NextInt()

この乱数ジェネレーターのシーケンスから、次の擬似乱数 int 一様に分散された値を返します。

NextInt(Int32)

この乱数ジェネレーターのシーケンスから取得された、0 (包括) から指定した値 (排他的) までの間で、擬似乱数の一様に分散された int 値を返します。

NextLong()

この乱数ジェネレーターのシーケンスから、次の擬似乱数 long 一様に分散された値を返します。

Notify()

このオブジェクトのモニターで待機している 1 つのスレッドを起動します。

(継承元 Object)
NotifyAll()

このオブジェクトのモニターで待機しているすべてのスレッドを起動します。

(継承元 Object)
SetHandle(IntPtr, JniHandleOwnership)

Handle プロパティを設定します。

(継承元 Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

このクラスのインスタンスは、擬似乱数のストリームを生成するために使用されます。その期間はわずか2<アップ>48</sup>です。

(継承元 JavaObject)
SetSeed(Int64)

1 つの long シードを使用して、この乱数ジェネレーターのシードを設定します。

ToArray<T>()

このJava配列ラッパーからマネージド配列を作成します。

(継承元 Object)
ToString()

オブジェクトの文字列形式を返します。

(継承元 Object)
UnregisterFromRuntime()

相互運用ランタイムからこのJava ピアの登録を解除します。

(継承元 Object)
Wait()

現在のスレッドが起動するまで待機します。通常は、 <em>notified</em> または <em>interrupted</em>。

(継承元 Object)
Wait(Int64, Int32)

現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。

(継承元 Object)
Wait(Int64)

現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。

(継承元 Object)

明示的なインターフェイスの実装

名前 説明
IJavaPeerable.Disposed()

このクラスのインスタンスは、擬似乱数のストリームを生成するために使用されます。その期間はわずか2<アップ>48</sup>です。

(継承元 JavaObject)
IJavaPeerable.Finalized()

このクラスのインスタンスは、擬似乱数のストリームを生成するために使用されます。その期間はわずか2<アップ>48</sup>です。

(継承元 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

このクラスのインスタンスは、擬似乱数のストリームを生成するために使用されます。その期間はわずか2<アップ>48</sup>です。

(継承元 JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

このクラスのインスタンスは、擬似乱数のストリームを生成するために使用されます。その期間はわずか2<アップ>48</sup>です。

(継承元 JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

このクラスのインスタンスは、擬似乱数のストリームを生成するために使用されます。その期間はわずか2<アップ>48</sup>です。

(継承元 JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

このクラスのインスタンスは、擬似乱数のストリームを生成するために使用されます。その期間はわずか2<アップ>48</sup>です。

(継承元 JavaObject)
IJavaPeerable.UnregisterFromRuntime()

このクラスのインスタンスは、擬似乱数のストリームを生成するために使用されます。その期間はわずか2<アップ>48</sup>です。

拡張メソッド

名前 説明
GetJniTypeName(IJavaPeerable)

インスタンス selfの型の JNI 名を取得します。

JavaAs<TResult>(IJavaPeerable)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

JavaCast<TResult>(IJavaObject)

Android ランタイムチェック型変換を実行します。

JavaCast<TResult>(IJavaObject)

このクラスのインスタンスは、擬似乱数のストリームを生成するために使用されます。その期間はわずか2<アップ>48</sup>です。

TryJavaCast<TResult>(IJavaPeerable, TResult)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

適用対象