RandomGeneratorFactory Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Se trata de una clase de fábrica para generar varios generadores de números aleatorios de un algoritmo específico.
[Android.Runtime.Register("java/util/random/RandomGeneratorFactory", ApiSince=35, DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "T extends java.util.random.RandomGenerator" })]
public sealed class RandomGeneratorFactory : Java.Lang.Object
[<Android.Runtime.Register("java/util/random/RandomGeneratorFactory", ApiSince=35, DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T extends java.util.random.RandomGenerator" })>]
type RandomGeneratorFactory = class
inherit Object
- Herencia
- Atributos
Comentarios
Se trata de una clase de fábrica para generar varios generadores de números aleatorios de un algoritmo específico.
RandomGeneratorFactory también proporciona métodos para seleccionar algoritmos de generador de números aleatorios.
Un específico RandomGeneratorFactory se puede ubicar mediante el RandomGeneratorFactory#of(String) método , donde la cadena de argumento es el nombre del algoritmo necesario. El método RandomGeneratorFactory#all() genera un valor no vacío Stream de todos los disponibles RandomGeneratorFactory RandomGeneratorFactorys que se pueden buscar para buscar un RandomGeneratorFactory adecuado para la tarea.
Hay tres métodos para construir una instancia randomGenerator, en función del tipo de inicialización necesaria.
RandomGeneratorFactory#create(long) se utiliza para la construcción de inicialización larga, RandomGeneratorFactory#create(byte[]) se utiliza para la construcción de inicialización byte[] y RandomGeneratorFactory#create() se utiliza para la construcción aleatoria de inicialización. Ejemplo;
{@code
RandomGeneratorFactory<RandomGenerator> factory = RandomGeneratorFactory.of("Random");
for (int i = 0; i < 10; i++) {
new Thread(() -> {
RandomGenerator random = factory.create(100L);
System.out.println(random.nextDouble());
}).start();
}
}
RandomGeneratorFactory también proporciona métodos que describen los atributos (o propiedades) de un generador y se pueden usar para seleccionar algoritmos de generador de números aleatorios. Estos métodos se usan normalmente junto con RandomGeneratorFactory#all(). En este ejemplo, el código busca el RandomGeneratorFactory que genera RandomGenerator RandomGenerators con el número más alto de bits de estado.
{@code
RandomGeneratorFactory<RandomGenerator> best = RandomGeneratorFactory.all()
.sorted(Comparator.comparingInt(RandomGenerator::stateBits).reversed())
.findFirst()
.orElse(RandomGeneratorFactory.of("Random"));
System.out.println(best.name() + " in " + best.group() + " was selected");
RandomGenerator rng = best.create();
System.out.println(rng.nextLong());
}
Agregado en 17.
Java documentación para java.util.random.RandomGeneratorFactory.
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.
Propiedades
| Nombre | Description |
|---|---|
| Class |
Devuelve la clase en tiempo de ejecución de este |
| Default |
Devuelve un |
| Handle |
Identificador de la instancia de Android subyacente. (Heredado de Object) |
| IsArbitrarilyJumpable |
Devuelve true si el generador aleatorio puede saltar un punto lejano especificado arbitrariamente en el ciclo de estado. |
| IsDeprecated |
Devuelve true si la implementación de RandomGenerator (algoritmo) se ha marcado para desuso. |
| IsHardware |
Devuelve true si el generador aleatorio usa un dispositivo de hardware (HRNG) para producir entradas entrópicos. |
| IsJumpable |
Devuelve true si el generador aleatorio puede saltar un punto lejano especificado en el ciclo de estado. |
| IsLeapable |
Devuelve true si el generador aleatorio es saltable y puede saltar a un punto muy lejano en el ciclo de estado. |
| IsSplittable |
Devuelve true si el generador aleatorio se puede clonar en un objeto independiente con las mismas propiedades, pero se coloca más en el ciclo de estado. |
| IsStatistical |
Devuelve true si el generador aleatorio se calcula mediante un algoritmo aritmético y es estadísticamente determinista. |
| IsStochastic |
Devuelve true si el generador aleatorio se calcula mediante orígenes externos o entrópicos como entradas. |
| IsStreamable |
Devuelve true si se puede usar el generador aleatorio para crear |
| JniIdentityHashCode |
Obtiene el código hash de identidad asignado a este Java del mismo nivel por el tiempo de ejecución de interoperabilidad. (Heredado de Object) |
| JniManagedPeerState |
Se trata de una clase de fábrica para generar varios generadores de números aleatorios de un algoritmo específico. (Heredado de JavaObject) |
| JniPeerMembers |
Se trata de una clase de fábrica para generar varios generadores de números aleatorios de un algoritmo específico. |
| PeerReference |
Obtiene la referencia de objeto JNI para este Java del mismo nivel. (Heredado de Object) |
| ThresholdClass |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. (Heredado de Object) |
| ThresholdType |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. (Heredado de Object) |
Métodos
| Nombre | Description |
|---|---|
| Clone() |
Crea y devuelve una copia de este objeto. (Heredado de Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Se trata de una clase de fábrica para generar varios generadores de números aleatorios de un algoritmo específico. (Heredado de JavaObject) |
| Create() |
Cree una instancia de |
| Create(Byte[]) |
Cree una instancia de |
| Create(Int64) |
Cree una instancia de |
| Dispose() |
Libera los recursos mantenidos por este Java del mismo nivel. (Heredado de Object) |
| Dispose(Boolean) |
Libera los recursos mantenidos por este Java del mismo nivel. (Heredado de Object) |
| DisposeUnlessReferenced() |
Se trata de una clase de fábrica para generar varios generadores de números aleatorios de un algoritmo específico. (Heredado de JavaObject) |
| Equals(Object) |
Se trata de una clase de fábrica para generar varios generadores de números aleatorios de un algoritmo específico. (Heredado de JavaObject) |
| Equals(Object) |
Indica si algún otro objeto es "igual a" este. (Heredado de Object) |
| Equidistribution() |
Devuelve la equidistribución del algoritmo. |
| GetHashCode() |
Devuelve un valor de código hash para el objeto . (Heredado de Object) |
| Group() |
Devuelve el nombre de grupo del algoritmo utilizado por el generador de números aleatorios. |
| JavaFinalize() |
Lo llama el recolector de elementos no utilizados en un objeto cuando la recolección de elementos no utilizados determina que no hay más referencias al objeto . (Heredado de Object) |
| Name() |
Devuelve el nombre del algoritmo utilizado por el generador de números aleatorios. |
| Notify() |
Activa un único subproceso que está esperando en el monitor de este objeto. (Heredado de Object) |
| NotifyAll() |
Activa todos los subprocesos que están esperando en el monitor de este objeto. (Heredado de Object) |
| Of(String) |
Devuelve un |
| Period() |
Devuelve el período del algoritmo utilizado por el generador de números aleatorios. |
| SetHandle(IntPtr, JniHandleOwnership) |
Establece la propiedad Handle. (Heredado de Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Se trata de una clase de fábrica para generar varios generadores de números aleatorios de un algoritmo específico. (Heredado de JavaObject) |
| StateBits() |
Devuelve el número de bits usados por el algoritmo para mantener el estado de inicialización. |
| ToArray<T>() |
Crea una matriz administrada a partir de este contenedor de matriz Java. (Heredado de Object) |
| ToString() |
Devuelve una representación de cadena del objeto . (Heredado de Object) |
| UnregisterFromRuntime() |
Anula el registro de este Java del mismo nivel del tiempo de ejecución de interoperabilidad. (Heredado de Object) |
| Wait() |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser em notificado/em< o >em<interrumpido>/em<.><> (Heredado de Object) |
| Wait(Int64, Int32) |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real. (Heredado de Object) |
| Wait(Int64) |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real. (Heredado de Object) |
Implementaciones de interfaz explícitas
| Nombre | Description |
|---|---|
| IJavaPeerable.Disposed() |
Se trata de una clase de fábrica para generar varios generadores de números aleatorios de un algoritmo específico. (Heredado de JavaObject) |
| IJavaPeerable.Finalized() |
Se trata de una clase de fábrica para generar varios generadores de números aleatorios de un algoritmo específico. (Heredado de JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
Se trata de una clase de fábrica para generar varios generadores de números aleatorios de un algoritmo específico. (Heredado de JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Se trata de una clase de fábrica para generar varios generadores de números aleatorios de un algoritmo específico. (Heredado de JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Se trata de una clase de fábrica para generar varios generadores de números aleatorios de un algoritmo específico. (Heredado de JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Se trata de una clase de fábrica para generar varios generadores de números aleatorios de un algoritmo específico. (Heredado de JavaObject) |
Métodos de extensión
| Nombre | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtiene el nombre JNI del tipo de la instancia |
| JavaAs<TResult>(IJavaPeerable) |
Intente coerción |
| JavaCast<TResult>(IJavaObject) |
Realiza una conversión de tipos comprobados en tiempo de ejecución de Android. |
| JavaCast<TResult>(IJavaObject) |
Se trata de una clase de fábrica para generar varios generadores de números aleatorios de un algoritmo específico. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Intente coerción |