Random 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
這個類別的實例可用來產生虛擬亂數的資料流程。
[Android.Runtime.Register("java/util/Random", DoNotGenerateAcw=true)]
public class Random : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable
[<Android.Runtime.Register("java/util/Random", DoNotGenerateAcw=true)>]
type Random = class
inherit Object
interface ISerializable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 繼承
- 衍生
- 屬性
- 實作
備註
這個類別的實例可用來產生虛擬亂數的資料流程。 類別使用 48 位種子,其會使用線性連續公式進行修改。 (請參閱電腦 程式設計、第2 節 3.2.1.)
如果 的兩個實例都使用相同的種子建立,而且會針對每個實例 Random
建立相同的方法呼叫序列,它們會產生並傳回相同的數位序列。 為了保證這個屬性,系統會為 類別 Random
指定特定的演算法。 基於 JAVA 程式碼的絕對可攜性,JAVA 實作必須使用這裡針對 類別 Random
顯示的所有演算法。 不過,允許類別的 Random
子類別使用其他演算法,只要它們遵守所有方法的一般合約。
類別所實作 Random
的演算法會使用公用程式方法,每個叫用上最多可以提供 32 個 protected
虛擬隨機產生的位。
許多應用程式都會發現 Math#random
方法更容易使用。
的 java.util.Random
實例為執行緒afe。 不過,跨執行緒同時使用相同的 java.util.Random
實例可能會發生爭用,因而效能不佳。 請考慮改用 java.util.concurrent.ThreadLocalRandom
多執行緒設計。
的 java.util.Random
實例不是密碼編譯安全。 請考慮改用 java.security.SecureRandom
來取得密碼編譯安全虛擬亂數產生器,以供安全性敏感性應用程式使用。
已在 1.0 中新增。
此頁面的部分是根據 原始碼專案所建立和共用的工作進行修改,並根據中所述的詞彙使用。
建構函式
Random() |
建立新的亂數產生器。 |
Random(Int64) |
使用單 |
Random(IntPtr, JniHandleOwnership) |
建立 JNI 物件的 Managed 標記法時所使用的建構函式;由執行時間呼叫。 |
屬性
Class |
傳回這個 |
Handle |
基礎 Android 實例的控制碼。 (繼承來源 Object) |
JniIdentityHashCode |
這個類別的實例可用來產生虛擬亂數的資料流程。 (繼承來源 Object) |
JniPeerMembers |
這個類別的實例可用來產生虛擬亂數的資料流程。 |
PeerReference |
這個類別的實例可用來產生虛擬亂數的資料流程。 (繼承來源 Object) |
ThresholdClass |
此 API 支援 Mono for Android 基礎結構,並不適合直接從您的程式碼使用。 |
ThresholdType |
此 API 支援 Mono for Android 基礎結構,並不適合直接從您的程式碼使用。 |
方法
Clone() |
建立並傳回這個 物件的複本。 (繼承來源 Object) |
Dispose() |
這個類別的實例可用來產生虛擬亂數的資料流程。 (繼承來源 Object) |
Dispose(Boolean) |
這個類別的實例可用來產生虛擬亂數的資料流程。 (繼承來源 Object) |
Equals(Object) |
指出其他物件是否「等於」這個物件。 (繼承來源 Object) |
GetHashCode() |
傳回此物件的雜湊碼值。 (繼承來源 Object) |
JavaFinalize() |
當垃圾收集判斷物件沒有其他參考時,由物件上的垃圾收集行程呼叫。 (繼承來源 Object) |
Next(Int32) |
產生下一個虛擬亂數。 |
NextBoolean() |
傳回這個亂數產生器序列中的下一個虛擬隨機、統一分佈 |
NextBytes(Byte[]) |
產生隨機位元組,並將其放入使用者提供的位元組陣列中。 |
NextDouble() |
傳回下一個虛擬亂數,從這個亂數產生器的序列之間 |
NextFloat() |
傳回下一個虛擬亂數,從這個亂數產生器的序列之間 |
NextGaussian() |
傳回下一個虛擬亂數,Gaussian (「正常」) 分散式 |
NextInt() |
傳回這個亂數產生器序列中的下一個虛擬隨機、統一分佈 |
NextInt(Int32) |
傳回介於 0 (內含) 之間的虛擬隨機值 |
NextLong() |
傳回這個亂數產生器序列中的下一個虛擬隨機、統一分佈 |
Notify() |
喚醒正在等候此物件的監視器的單一線程。 (繼承來源 Object) |
NotifyAll() |
喚醒正在等候此物件監視器的所有線程。 (繼承來源 Object) |
SetHandle(IntPtr, JniHandleOwnership) |
設定 Handle 屬性。 (繼承來源 Object) |
SetSeed(Int64) |
使用單 |
ToArray<T>() |
這個類別的實例可用來產生虛擬亂數的資料流程。 (繼承來源 Object) |
ToString() |
傳回物件的字串表示。 (繼承來源 Object) |
UnregisterFromRuntime() |
這個類別的實例可用來產生虛擬亂數的資料流程。 (繼承來源 Object) |
Wait() |
讓目前的執行緒等到喚醒為止,通常是藉由 < em > notified < /em > 或 < em > interrupted < /em > 來喚醒。 (繼承來源 Object) |
Wait(Int64) |
讓目前的執行緒等到喚醒為止,通常是 < 透過 em > notified < /em 或 em > interrupted < /em >> ,或 < 直到經過一定數量的即時為止。 (繼承來源 Object) |
Wait(Int64, Int32) |
讓目前的執行緒等到喚醒為止,通常是 < 透過 em > notified < /em 或 em > interrupted < /em >> ,或 < 直到經過一定數量的即時為止。 (繼承來源 Object) |
明確介面實作
IJavaPeerable.Disposed() |
這個類別的實例可用來產生虛擬亂數的資料流程。 (繼承來源 Object) |
IJavaPeerable.DisposeUnlessReferenced() |
這個類別的實例可用來產生虛擬亂數的資料流程。 (繼承來源 Object) |
IJavaPeerable.Finalized() |
這個類別的實例可用來產生虛擬亂數的資料流程。 (繼承來源 Object) |
IJavaPeerable.JniManagedPeerState |
這個類別的實例可用來產生虛擬亂數的資料流程。 (繼承來源 Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
這個類別的實例可用來產生虛擬亂數的資料流程。 (繼承來源 Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
這個類別的實例可用來產生虛擬亂數的資料流程。 (繼承來源 Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
這個類別的實例可用來產生虛擬亂數的資料流程。 (繼承來源 Object) |
擴充方法
JavaCast<TResult>(IJavaObject) |
執行 Android 執行時間檢查的類型轉換。 |
JavaCast<TResult>(IJavaObject) |
這個類別的實例可用來產生虛擬亂數的資料流程。 |
GetJniTypeName(IJavaPeerable) |
這個類別的實例可用來產生虛擬亂數的資料流程。 |