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
- Наследование
- Производный
- Атрибуты
- Реализации
Комментарии
Экземпляр этого класса используется для создания потока псевдослучайных чисел. Класс использует 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) |
Создает новый генератор случайных чисел, используя одно |
Random(IntPtr, JniHandleOwnership) |
Конструктор, используемый при создании управляемых представлений объектов JNI; вызывается средой выполнения. |
Свойства
Class |
Возвращает класс среды выполнения данного объекта |
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() |
Возвращает следующее псевдослучайное, равномерно распределенное |
NextBytes(Byte[]) |
Создает случайные байты и помещает их в предоставленный пользователем массив байтов. |
NextDouble() |
Возвращает следующее псевдослучайное значение, равномерно распределенное |
NextFloat() |
Возвращает следующее псевдослучайное значение, равномерно распределенное |
NextGaussian() |
Возвращает следующее псевдослучайство, гауссовское ("нормально") распределенное |
NextInt() |
Возвращает следующее псевдослучайное, равномерно распределенное |
NextInt(Int32) |
Возвращает псевдослучайное, равномерно распределенное |
NextLong() |
Возвращает следующее псевдослучайное, равномерно распределенное |
Notify() |
Пробуждает один поток, ожидающий монитора этого объекта. (Унаследовано от Object) |
NotifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. (Унаследовано от Object) |
SetHandle(IntPtr, JniHandleOwnership) |
Задает свойство Handle. (Унаследовано от Object) |
SetSeed(Int64) |
Задает начальное значение этого генератора случайных чисел с помощью одного |
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) |
Экземпляр этого класса используется для создания потока псевдослучайных чисел. |