Random Класс

Определение

Экземпляр этого класса используется для создания потока псевдослучайных чисел.

[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
Наследование
Random
Производный
Атрибуты
Реализации

Комментарии

Экземпляр этого класса используется для создания потока псевдослучайных чисел. Класс использует 48-разрядное начальное значение, которое изменяется с помощью линейной конгруэнциальной формулы. (См. Дональд Кнут, Искусство компьютерного программирования, том 2, раздел 3.2.1.)

Если два экземпляра Random создаются с одинаковым начальным значением и для каждого из них выполняется одинаковая последовательность вызовов методов, они будут создавать и возвращать одинаковые последовательности чисел. Чтобы гарантировать это свойство, определенные алгоритмы указываются для класса Random. Реализации Java должны использовать все алгоритмы, показанные здесь для класса Random, для обеспечения абсолютной переносимости кода Java. Однако подклассы класса Random могут использовать другие алгоритмы при условии, что они соответствуют общим контрактам для всех методов.

Алгоритмы, реализованные классом Random , используют служебный protected метод, который при каждом вызове может предоставить до 32 псевдослучайных битов.

Многие приложения считают метод Math#random более простым в использовании.

Экземпляры java.util.Random являются threadsafe. Однако одновременное использование одного экземпляра java.util.Random в потоках может привести к состязаниям и снижению производительности. Вместо этого рекомендуется использовать java.util.concurrent.ThreadLocalRandom в многопоточных конструкциях.

Экземпляры java.util.Random не являются криптографически безопасными. Вместо этого рассмотрите возможность использования java.security.SecureRandom , чтобы получить криптографически защищенный генератор псевдослучайных чисел для использования приложениями, чувствительными к безопасности.

Добавлено в версии 1.0.

Документация по Java для java.util.Random.

Части этой страницы являются изменениями, основанными на работе, созданной и совместно используемой проектом Android и используемой в соответствии с условиями, Creative Commons 2.5 Attribution License.

Конструкторы

Random()

Создает новый генератор случайных чисел.

Random(Int64)

Создает новый генератор случайных чисел, используя одно long начальное значение.

Random(IntPtr, JniHandleOwnership)

Конструктор, используемый при создании управляемых представлений объектов JNI; вызывается средой выполнения.

Свойства

Class

Возвращает класс среды выполнения данного объекта Object.

(Унаследовано от Object)
Handle

Дескриптор базового экземпляра Android.

(Унаследовано от Object)
JniIdentityHashCode

Экземпляр этого класса используется для создания потока псевдослучайных чисел.

(Унаследовано от Object)
JniPeerMembers

Экземпляр этого класса используется для создания потока псевдослучайных чисел.

PeerReference

Экземпляр этого класса используется для создания потока псевдослучайных чисел.

(Унаследовано от Object)
ThresholdClass

Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода.

ThresholdType

Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода.

Методы

Clone()

Создает и возвращает копию этого объекта.

(Унаследовано от Object)
Dispose()

Экземпляр этого класса используется для создания потока псевдослучайных чисел.

(Унаследовано от Object)
Dispose(Boolean)

Экземпляр этого класса используется для создания потока псевдослучайных чисел.

(Унаследовано от Object)
Equals(Object)

Указывает, равен ли какой-то другой объект этому объекту.

(Унаследовано от Object)
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)

Возвращает псевдослучайное, равномерно распределенное int значение между 0 (включительно) и заданным значением (эксклюзивным), полученным из последовательности генератора случайных чисел.

NextLong()

Возвращает следующее псевдослучайное, равномерно распределенное long значение из последовательности генератора случайных чисел.

Notify()

Пробуждает один поток, ожидающий монитора этого объекта.

(Унаследовано от Object)
NotifyAll()

Пробуждает все потоки, ожидающие на мониторе этого объекта.

(Унаследовано от Object)
SetHandle(IntPtr, JniHandleOwnership)

Задает свойство Handle.

(Унаследовано от Object)
SetSeed(Int64)

Задает начальное значение этого генератора случайных чисел с помощью одного long начального значения.

ToArray<T>()

Экземпляр этого класса используется для создания потока псевдослучайных чисел.

(Унаследовано от Object)
ToString()

Возвращает строковое представление объекта.

(Унаследовано от Object)
UnregisterFromRuntime()

Экземпляр этого класса используется для создания потока псевдослучайных чисел.

(Унаследовано от Object)
Wait()

Вызывает ожидание текущего потока, пока он не пробудится, как правило, из-за <уведомления><<> или>прерывания или прерывания.><

(Унаследовано от Object)
Wait(Int64)

Вызывает ожидание текущего потока, пока он не пробудится, как правило, путем <уведомления><<> или>прерывания или прерывания<> или до истечения определенного количества реального времени.

(Унаследовано от Object)
Wait(Int64, Int32)

Вызывает ожидание текущего потока, пока он не пробудится, как правило, путем <уведомления><<> или>прерывания или прерывания<> или до истечения определенного количества реального времени.

(Унаследовано от 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)

Экземпляр этого класса используется для создания потока псевдослучайных чисел.

Применяется к