SplittableRandom 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
适用于其他上下文 (使用的统一伪随机值的生成器,) 可能生成子任务的独立并行计算。
[Android.Runtime.Register("java/util/SplittableRandom", ApiSince=24, DoNotGenerateAcw=true)]
public sealed class SplittableRandom : Java.Lang.Object
[<Android.Runtime.Register("java/util/SplittableRandom", ApiSince=24, DoNotGenerateAcw=true)>]
type SplittableRandom = class
inherit Object
- 继承
- 属性
注解
适用于其他上下文 (使用的统一伪随机值的生成器,) 可能生成子任务的独立并行计算。 类SplittableRandom
支持生成 、 和 double
类型的int
long
伪随机数的方法,其用法与 类java.util.Random
类似,但在以下方面有所不同:
<ul>
<li>系列生成的值通过 DieHarder 套件测试随机数生成器的独立性和一致性属性。 (最近使用 版本 3.31.1.) 这些测试仅验证某些类型和范围的方法,但预计类似的属性至少对其他类型具有近似值。 em <>period</em> (重复) 至少为 2<sup>64</sup> 之前生成值的系列长度。
<li>方法 #split
构造并返回一个新的 SplittableRandom 实例,该实例不与当前实例共享任何可变状态。 但是,由于概率非常高,这两个对象共同生成的值具有相同的统计属性,就像使用单个对象的单个线程 SplittableRandom
生成相同数量的值一样。
<li>SplittableRandom 实例是 <em>not</em> thread-safe。 它们旨在跨线程进行拆分而不是共享。 例如,使用随机数的 java.util.concurrent.ForkJoinTask fork/join-style
计算可能包括 形式的 new Subtask(aSplittableRandom.split()).fork()
构造。
<li>此类提供用于生成随机流的附加方法,这些方法在模式中使用 stream.parallel()
时采用上述技术。
</ul>
的 SplittableRandom
实例在加密上不安全。 请考虑在安全敏感型应用程序中改用 java.security.SecureRandom
。 此外,默认构造的实例不使用加密随机种子,除非 System#getProperty 系统属性java.util.secureRandomSeed
设置为 true
。
在 1.8 中添加。
的 java.util.SplittableRandom
Java 文档。
此页面的某些部分是基于 创建和共享的工作进行的修改,并根据 署名许可中所述的条款使用。
构造函数
SplittableRandom() |
创建一个新的 SplittableRandom 实例,该实例可能会生成在统计上独立于当前程序中任何其他实例的值序列;和 可能会(通常)因程序调用而异。 |
SplittableRandom(Int64) |
使用指定的初始种子创建新的 SplittableRandom 实例。 |
属性
Class |
返回此 |
Handle |
基础 Android 实例的句柄。 (继承自 Object) |
JniIdentityHashCode |
适用于其他上下文 (使用的统一伪随机值的生成器,) 可能生成子任务的独立并行计算。 (继承自 Object) |
JniPeerMembers |
适用于其他上下文 (使用的统一伪随机值的生成器,) 可能生成子任务的独立并行计算。 |
PeerReference |
适用于其他上下文 (使用的统一伪随机值的生成器,) 可能生成子任务的独立并行计算。 (继承自 Object) |
ThresholdClass |
此 API 支持 Mono for Android 基础结构,不应直接从代码中使用。 (继承自 Object) |
ThresholdType |
此 API 支持 Mono for Android 基础结构,不应直接从代码中使用。 (继承自 Object) |
方法
Clone() |
创建并返回此对象的副本。 (继承自 Object) |
Dispose() |
适用于其他上下文 (使用的统一伪随机值的生成器,) 可能生成子任务的独立并行计算。 (继承自 Object) |
Dispose(Boolean) |
适用于其他上下文 (使用的统一伪随机值的生成器,) 可能生成子任务的独立并行计算。 (继承自 Object) |
Equals(Object) |
指示某个其他对象是否“等于”此对象。 (继承自 Object) |
GetHashCode() |
返回对象的哈希代码值。 (继承自 Object) |
JavaFinalize() |
当垃圾回收确定不再引用对象时,由垃圾回收器对对象调用。 (继承自 Object) |
NextBoolean() |
返回伪随机 |
NextBytes(Byte[]) |
使用生成的伪随机字节填充用户提供的字节数组。 |
NextDouble() |
返回介于零 (非独占) 和一个 (独占) 之间的伪随机 |
NextDouble(Double) |
返回介于 0 之间的伪随机 |
NextDouble(Double, Double) |
返回指定原点 (非独占) 与绑定 (独占) 之间的伪随机 |
NextInt() |
返回伪随机 |
NextInt(Int32) |
返回零 (非独占) 与指定绑定 (排他) 之间的伪随机 |
NextInt(Int32, Int32) |
返回指定原点 (非独占) 与指定绑定 (排他) 之间的伪随机 |
NextLong() |
返回伪随机 |
NextLong(Int64) |
返回零 (非独占) 与指定绑定 (排他) 之间的伪随机 |
NextLong(Int64, Int64) |
返回指定原点 (非独占) 与指定绑定 (排他) 之间的伪随机 |
Notify() |
唤醒正在等待此对象的监视器的单个线程。 (继承自 Object) |
NotifyAll() |
唤醒正在等待此对象的监视器的所有线程。 (继承自 Object) |
SetHandle(IntPtr, JniHandleOwnership) |
设置 Handle 属性。 (继承自 Object) |
Split() |
构造并返回一个新的 SplittableRandom 实例,该实例不与该实例共享可变状态。 |
ToArray<T>() |
适用于其他上下文 (使用的统一伪随机值的生成器,) 可能生成子任务的独立并行计算。 (继承自 Object) |
ToString() |
返回对象的字符串表示形式。 (继承自 Object) |
UnregisterFromRuntime() |
适用于其他上下文 (使用的统一伪随机值的生成器,) 可能生成子任务的独立并行计算。 (继承自 Object) |
Wait() |
导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>。<> (继承自 Object) |
Wait(Int64) |
导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>,或直到经过一定数量的实时。<> (继承自 Object) |
Wait(Int64, Int32) |
导致当前线程等待,直到它被唤醒,通常是通过 em <通知/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) |
适用于其他上下文 (使用的统一伪随机值的生成器,) 可能生成子任务的独立并行计算。 |