Random Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Uma instância dessa classe é usada para gerar um fluxo de números pseudorandom; seu período é apenas 2<sup 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
- Herança
- Derivado
- Atributos
- Implementações
Comentários
Uma instância dessa classe é usada para gerar um fluxo de números pseudorandom; seu período é apenas 2<sup 48>/sup<>. A classe usa uma semente de 48 bits, que é modificada usando uma fórmula congruencial linear. (Consulte Donald E. Knuth, <cite>The Art of Computer Programming, Volume 2, Third edition: Seminumerical Algorithms</cite>, Section 3.2.1.)
Se duas instâncias forem Random criadas com a mesma semente e a mesma sequência de chamadas de método for feita para cada uma, elas gerarão e retornarão sequências idênticas de números. Para garantir essa propriedade, algoritmos específicos são especificados para a classe Random. Java implementações devem usar todos os algoritmos mostrados aqui para a classeRandom, para fins de portabilidade absoluta de Java código. No entanto, subclasses de classe Random têm permissão para usar outros algoritmos, desde que aderem aos contratos gerais para todos os métodos.
Os algoritmos implementados por classe Random usam um protected método utilitário que em cada invocação pode fornecer até 32 bits gerados pseudorandomly.
Muitos aplicativos acharão o método Math#random mais simples de usar.
As instâncias são java.util.Random threadsafe. No entanto, o uso simultâneo da mesma java.util.Random instância entre threads pode encontrar contenção e consequente desempenho ruim. Considere, em vez disso, usar java.util.concurrent.ThreadLocalRandom em designs multithreaded.
As instâncias não java.util.Random são criptograficamente seguras. Considere, em vez disso, usar java.security.SecureRandom para obter um gerador de número pseudo-aleatório criptograficamente seguro para uso por aplicativos sensíveis à segurança.
Adicionado em 1.0.
Java documentação para java.util.Random.
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.
Construtores
| Nome | Description |
|---|---|
| Random() |
Cria um novo gerador de número aleatório. |
| Random(Int64) |
Cria um novo gerador de número aleatório usando uma única |
| Random(IntPtr, JniHandleOwnership) |
Um construtor usado ao criar representações gerenciadas de objetos JNI; chamado pelo runtime. |
Propriedades
| Nome | Description |
|---|---|
| Class |
Retorna a classe de runtime deste |
| Handle |
O identificador para a instância subjacente do Android. (Herdado de Object) |
| JniIdentityHashCode |
Obtém o código de hash de identidade atribuído a esse par Java pelo runtime de interoperabilidade. (Herdado de Object) |
| JniManagedPeerState |
Uma instância dessa classe é usada para gerar um fluxo de números pseudorandom; seu período é apenas 2<sup 48>/sup<>. (Herdado de JavaObject) |
| JniPeerMembers |
Uma instância dessa classe é usada para gerar um fluxo de números pseudorandom; seu período é apenas 2<sup 48>/sup<>. |
| PeerReference |
Obtém a referência de objeto JNI para este par Java. (Herdado de Object) |
| ThresholdClass |
Essa API dá suporte à infraestrutura do Mono para Android e não se destina a ser usada diretamente do seu código. |
| ThresholdType |
Essa API dá suporte à infraestrutura do Mono para Android e não se destina a ser usada diretamente do seu código. |
Métodos
| Nome | Description |
|---|---|
| Clone() |
Cria e retorna uma cópia desse objeto. (Herdado de Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Uma instância dessa classe é usada para gerar um fluxo de números pseudorandom; seu período é apenas 2<sup 48>/sup<>. (Herdado de JavaObject) |
| Dispose() |
Libera os recursos mantidos por esse par Java. (Herdado de Object) |
| Dispose(Boolean) |
Libera os recursos mantidos por esse par Java. (Herdado de Object) |
| DisposeUnlessReferenced() |
Uma instância dessa classe é usada para gerar um fluxo de números pseudorandom; seu período é apenas 2<sup 48>/sup<>. (Herdado de JavaObject) |
| Equals(Object) |
Uma instância dessa classe é usada para gerar um fluxo de números pseudorandom; seu período é apenas 2<sup 48>/sup<>. (Herdado de JavaObject) |
| Equals(Object) |
Indica se algum outro objeto é "igual a" este. (Herdado de Object) |
| From(IRandomGenerator) |
Uma instância dessa classe é usada para gerar um fluxo de números pseudorandom; seu período é apenas 2<sup 48>/sup<>. |
| GetHashCode() |
Retorna um valor de código hash para o objeto. (Herdado de Object) |
| JavaFinalize() |
Chamado pelo coletor de lixo em um objeto quando a coleta de lixo determina que não há mais referências ao objeto. (Herdado de Object) |
| Next(Int32) |
Gera o próximo número pseudorandom. |
| NextBoolean() |
Retorna o próximo pseudorandom, valor distribuído |
| NextBytes(Byte[]) |
Gera bytes aleatórios e os coloca em uma matriz de bytes fornecida pelo usuário. |
| NextDouble() |
Retorna o próximo pseudorandom, valor distribuído |
| NextFloat() |
Retorna o próximo pseudorandom, valor distribuído |
| NextGaussian() |
Retorna o próximo pseudorandom, valor distribuído |
| NextInt() |
Retorna o próximo pseudorandom, valor distribuído |
| NextInt(Int32) |
Retorna um pseudorandom, valor distribuído |
| NextLong() |
Retorna o próximo pseudorandom, valor distribuído |
| Notify() |
Ativa um único thread que está aguardando no monitor deste objeto. (Herdado de Object) |
| NotifyAll() |
Ativa todos os threads que estão aguardando no monitor deste objeto. (Herdado de Object) |
| SetHandle(IntPtr, JniHandleOwnership) |
Define a propriedade Handle (Herdado de Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Uma instância dessa classe é usada para gerar um fluxo de números pseudorandom; seu período é apenas 2<sup 48>/sup<>. (Herdado de JavaObject) |
| SetSeed(Int64) |
Define a semente desse gerador de número aleatório usando uma única |
| ToArray<T>() |
Cria uma matriz gerenciada com base nesse wrapper de matriz Java. (Herdado de Object) |
| ToString() |
Retorna uma representação de cadeia de caracteres do objeto. (Herdado de Object) |
| UnregisterFromRuntime() |
Cancela o registro desse par Java do runtime de interoperabilidade. (Herdado de Object) |
| Wait() |
Faz com que o thread atual aguarde até ser despertado, normalmente por ser <notificado/em> ou <em>interrompido</em>.<> (Herdado de Object) |
| Wait(Int64, Int32) |
Faz com que o thread atual aguarde até que ele seja despertado, normalmente por ser <>notificado</em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido. (Herdado de Object) |
| Wait(Int64) |
Faz com que o thread atual aguarde até que ele seja despertado, normalmente por ser <>notificado</em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido. (Herdado de Object) |
Implantações explícitas de interface
| Nome | Description |
|---|---|
| IJavaPeerable.Disposed() |
Uma instância dessa classe é usada para gerar um fluxo de números pseudorandom; seu período é apenas 2<sup 48>/sup<>. (Herdado de JavaObject) |
| IJavaPeerable.Finalized() |
Uma instância dessa classe é usada para gerar um fluxo de números pseudorandom; seu período é apenas 2<sup 48>/sup<>. (Herdado de JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
Uma instância dessa classe é usada para gerar um fluxo de números pseudorandom; seu período é apenas 2<sup 48>/sup<>. (Herdado de JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Uma instância dessa classe é usada para gerar um fluxo de números pseudorandom; seu período é apenas 2<sup 48>/sup<>. (Herdado de JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Uma instância dessa classe é usada para gerar um fluxo de números pseudorandom; seu período é apenas 2<sup 48>/sup<>. (Herdado de JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Uma instância dessa classe é usada para gerar um fluxo de números pseudorandom; seu período é apenas 2<sup 48>/sup<>. (Herdado de JavaObject) |
| IJavaPeerable.UnregisterFromRuntime() |
Uma instância dessa classe é usada para gerar um fluxo de números pseudorandom; seu período é apenas 2<sup 48>/sup<>. |
Métodos de Extensão
| Nome | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtém o nome JNI do tipo da instância |
| JavaAs<TResult>(IJavaPeerable) |
Tente coagir a digitar |
| JavaCast<TResult>(IJavaObject) |
Executa uma conversão de tipo marcada por runtime do Android. |
| JavaCast<TResult>(IJavaObject) |
Uma instância dessa classe é usada para gerar um fluxo de números pseudorandom; seu período é apenas 2<sup 48>/sup<>. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Tente coagir a digitar |