Java.util.Random Class — CoderLessons.com
Экземпляр класса java.util.Random используется для генерации потока псевдослучайных чисел. Ниже приведены важные моменты о Random –
Класс использует 48-разрядное начальное число, которое модифицируется с использованием линейной конгруэнтной формулы.
Алгоритмы, реализованные классом Random, используют защищенный служебный метод, который при каждом вызове может выдавать до 32 псевдослучайно сгенерированных битов.
Класс использует 48-разрядное начальное число, которое модифицируется с использованием линейной конгруэнтной формулы.
Алгоритмы, реализованные классом Random, используют защищенный служебный метод, который при каждом вызове может выдавать до 32 псевдослучайно сгенерированных битов.
Объявление класса
Ниже приводится объявление для класса java.util.Random –
public class Random extends Object implements Serializable
Конструкторы классов
Sr. | Конструктор и описание |
---|---|
1 | Random () Это создает новый генератор случайных чисел. |
2 | Случайный (длинное семя) Это создает новый генератор случайных чисел с использованием одного длинного начального числа. |
Random ()
Это создает новый генератор случайных чисел.
Случайный (длинное семя)
Это создает новый генератор случайных чисел с использованием одного длинного начального числа.
Методы класса
Sr.No. | Метод и описание |
---|---|
1 | защищенный int следующий (int биты) Этот метод генерирует следующее псевдослучайное число. |
2 | логическое следующееBoolean () Этот метод возвращает следующее псевдослучайное, равномерно распределенное логическое значение из последовательности этого генератора случайных чисел. |
3 | void nextBytes (byte [] bytes) Этот метод генерирует случайные байты и помещает их в предоставленный пользователем байтовый массив. |
4 | double nextDouble () Этот метод возвращает следующее псевдослучайное, равномерно распределенное двойное значение между 0,0 и 1,0 из последовательности этого генератора случайных чисел. |
5 | float nextFloat () Этот метод возвращает следующее псевдослучайное, равномерно распределенное значение с плавающей запятой между 0,0 и 1,0 из последовательности этого генератора случайных чисел. |
6 | double nextGaussian () Этот метод возвращает следующее псевдослучайное, распределенное по Гауссу («обычно») двойное значение со средним 0,0 и стандартным отклонением 1,0 от последовательности этого генератора случайных чисел. |
7 | int nextInt () Этот метод возвращает следующее псевдослучайное, равномерно распределенное значение int из последовательности этого генератора случайных чисел. |
8 | int nextInt (int n) Этот метод возвращает псевдослучайное, равномерно распределенное значение типа int между 0 (включительно) и указанным значением (исключая), извлеченное из последовательности этого генератора случайных чисел. |
9 | long nextLong () Этот метод возвращает следующее псевдослучайное, равномерно распределенное длинное значение из последовательности этого генератора случайных чисел. |
10 | void setSeed (длинное семя) Этот метод устанавливает начальное значение этого генератора случайных чисел, используя одно длинное начальное число. |
Этот метод генерирует следующее псевдослучайное число.
Этот метод возвращает следующее псевдослучайное, равномерно распределенное логическое значение из последовательности этого генератора случайных чисел.
Этот метод генерирует случайные байты и помещает их в предоставленный пользователем байтовый массив.
Этот метод возвращает следующее псевдослучайное, равномерно распределенное двойное значение между 0,0 и 1,0 из последовательности этого генератора случайных чисел.
Этот метод возвращает следующее псевдослучайное, равномерно распределенное значение с плавающей запятой между 0,0 и 1,0 из последовательности этого генератора случайных чисел.
Этот метод возвращает следующее псевдослучайное, распределенное по Гауссу («обычно») двойное значение со средним 0,0 и стандартным отклонением 1,0 от последовательности этого генератора случайных чисел.
Этот метод возвращает следующее псевдослучайное, равномерно распределенное значение int из последовательности этого генератора случайных чисел.
Этот метод возвращает псевдослучайное, равномерно распределенное значение типа int между 0 (включительно) и указанным значением (исключая), извлеченное из последовательности этого генератора случайных чисел.
Этот метод возвращает следующее псевдослучайное, равномерно распределенное длинное значение из последовательности этого генератора случайных чисел.
Этот метод устанавливает начальное значение этого генератора случайных чисел, используя одно длинное начальное число.
Методы унаследованы
Этот класс наследует методы от следующих классов –
На основе чего Math.random() в java генерирует числа?
Вопрос задан
Изменён 1 год 2 месяца назад
Просмотрен 136 раз
Недавно начал изучать Java
. Столкнулся с необходимостью генерации случайных чисел, пока писал код пришёл в голову вопрос «на основе чего Math.random()
в java генерирует числа?». Я знаю, что пока не изобрели генератора истинно случайных чисел, и такие функции обычно генерируют число из каких-нибудь входных параметров (время с момента первого запуска компьютера, кэш, белый шум и т. д.). Так вот какую входную информацию использует Java
для создания случайных чисел?
- java
- случайные-числа
Для этого были придуманы псевдослучайные числа
. Псевдослучайные числа — это некая последовательность, числа в которой на первый взгляд кажутся случайными, но специалист при детальном анализе сможет найти в них определенные закономерности. Для шифрования секретных документов такие числа не подойдут, а для имитации бросания кубика в игре — вполне.
Есть много алгоритмов генерации последовательности псевдослучайных чисел и почти все из них генерируют следующее случайное число на основе предыдущего и еще каких-то вспомогательных чисел.
Обычно их генерирует ГПСЧ (Генератор Псевдослучайных Чисел). Он работает по алгоритмам и различным методам операций над числами. Наиболее распространены линейный конгруэнтный метод, метод Фибоначчи с запаздываниями, регистр сдвига с линейной обратной связью, регистр сдвига с обобщённой обратной связью. Из современных ГПСЧ широкое распространение также получил «вихрь Мерсенна».
Math.random()
— это просто ярлык для вызова класса Random
. Это более просто и менее полно, чем java.util.Random
, но в некоторых случаях этого достаточно.
Класс java.util.Random
реализует линейный конгруэнтный метод.
Зарегистрируйтесь или войдите
Регистрация через Google
Регистрация через Facebook
Регистрация через почту
Отправить без регистрации
Почта
Необходима, но никому не показывается
Отправить без регистрации
Почта
Необходима, но никому не показывается
Нажимая на кнопку «Отправить ответ», вы соглашаетесь с нашими пользовательским соглашением, политикой конфиденциальности и политикой о куки
Документация JDK 19 — Главная
Обзор
- Прочтите меня
- Примечания к выпуску
- Что нового
- Руководство по миграции
- Загрузить JDK
- Руководство по установке
- Формат строки версии
Инструменты
- Технические характеристики инструментов JDK
- Руководство пользователя JShell
- Руководство по JavaDoc
- Руководство пользователя средства упаковки
Язык и библиотеки
- Обновления языка
- Основные библиотеки
- HTTP-клиент JDK
- Учебники по Java
- Модульный JDK
- Руководство программиста API бортового регистратора
- Руководство по интернационализации
Технические характеристики
- Документация API
- Язык и ВМ
- Имена стандартных алгоритмов безопасности Java
- банок
- Собственный интерфейс Java (JNI)
- Инструментальный интерфейс JVM (JVM TI)
- Сериализация
- Проводной протокол отладки Java (JDWP)
- Спецификация комментариев к документации для стандартного доклета
- Прочие характеристики
Безопасность
- Руководство по безопасному кодированию
- Руководство по безопасности
Виртуальная машина HotSpot
- Руководство по виртуальной машине Java
- Настройка сборки мусора
Управление и устранение неполадок
- Руководство по устранению неполадок
- Руководство по мониторингу и управлению
- Руководство по JMX
Client Technologies
- Руководство по специальным возможностям Java
Случайный — язык программирования Kotlin
Common
JVM
JS
Native
1. 3
Абстрактный класс, реализуемый алгоритмами генератора случайных чисел.
Сопутствующий объект Random.Default является экземпляром Random по умолчанию.
Чтобы получить заполненный экземпляр генератора случайных чисел, используйте функцию Random.
импорт kotlin.math.sin импорт kotlin.random.Random импортировать kotlin.test.assertTrue весело main(аргументы: Array) { // начало выборки val randomValues = Список (10) { Random.nextInt (0, 100)} // каждый раз печатает новую последовательность println(случайные значения) val nextValues = Список (10) { Random.nextInt (0, 100) } println (следующие значения) println("randomValues != nextValues is ${randomValues != nextValues}") // верно //конец выборки }
Типы
Общий
JVM
JS
Собственный
1.0
По умолчанию
Генератор случайных чисел по умолчанию.
сопутствующий объект По умолчанию: Случайный, Сериализуемый
Конструкторы
Common
JVM
JS
Native
1. 0
Абстрактный класс, реализуемый алгоритмами генератора случайных чисел.
Случайный()
Функции
Общий
JVM
JS
Собственный
1.0
nextBits
Получает следующее случайное количество битов в битах.
abstract fun nextBits(bitCount: Int): Int
Common
JVM
JS
Native
1.0
9018an next. open fun nextBoolean(): Boolean
Common
JVM
JS
Native
1.0
nextBytes
Заполняет поддиапазон указанного массива байтов, начиная с fromIndex включительно и заканчивая toIndex исключая со случайными байтами.
open fun nextBytes(
массив: ByteArray,
fromIndex: Int = 0,
toIndex: Int = array. size
): ByteArray
Заполняет указанный массив случайными байтами и возвращает его случайным образом.
Создает массив байтов указанного размера, заполненный случайными байтами.
Open Fun NextBytes (размер: int): Bytearray
Common
JVM
JS
Native
1.0
NextDuple
inmederive 1 -lemarment). эксклюзив).
open fun nextDouble(): Double
Получает следующее случайное неотрицательное Double
из генератора случайных чисел, меньшее указанного, пока не будет достигнута граница.
open fun nextDouble(until: Double): Double
Получает следующее случайное Double
из генератора случайных чисел в указанном диапазоне.
Open Fun Nextduble (от: Double, до: Double): Double
Common
JVM
JS
Native
10119
Nextfloat
inmedlight inmedlipriftripriftripriftripriftripriftripriftripriftripriftripriftripring intement Flagiformistripring Flagiformistripring Flagiformistripring 01118
. ) и 1 (эксклюзивный).
открыть удовольствие nextFloat(): Float
Common
JVM
JS
Native
1.0
nextInt
Получает следующее случайное Int
из генератора случайных чисел
open fun nextInt(): Int
Получает следующее случайное неотрицательное число Int
из генератора случайных чисел, меньшее указанного, пока не будет достигнута граница.
open fun nextInt(until: Int): Int
Получает следующее случайное число Int
из генератора случайных чисел в указанном диапазоне.
Open Fun Nextint (от: int, до: int): int
Common
JVM
JS
Натив
1,0
Следующий
91,0
Следующий
1,0
. .
open fun nextLong(): Long
Получает следующее случайное неотрицательное Long
из генератора случайных чисел, меньшее указанного, пока не будет достигнута граница.
open fun nextLong(until: Long): Long
Получает следующее случайное число Long
из генератора случайных чисел в указанном диапазоне.
open fun nextLong(от: Long до: Long): Long
Функции сопутствующих объектов
Common
JVM
JS
Native
1.0
nextBits
Получает следующее случайное количество битов в битах.
fun nextBits(bitCount: Int): Int
Common
JVM
JS
Собственный
1.0
nextBoolean
Получает следующее случайное логическое значение.
fun nextBoolean(): Boolean
Common
JVM
JS
Native
1.0
с указанными random bytes
массивом. Создает массив байтов указанного размера, заполненный случайными байтами.
Заполняет поддиапазон указанного массива байтов, начиная с fromIndex включительно и заканчивая toIndex исключая
со случайными байтами.
fun nextBytes(
array: ByteArray,
fromIndex: Int,
toIndex: Int
): ByteArray
Common
JVM
JS
Native
1.0
nextDouble
Gets the next random Double значение, равномерно распределенное между 0 (включительно) и 1 (исключительно).
fun nextDouble(): Double
Получает следующее случайное неотрицательное число Double
из генератора случайных чисел, меньше указанного до ограничения.
fun nextDouble(until: Double): Double
Получает следующее случайное Double
из генератора случайных чисел в указанном диапазоне.
Fun Nextduble (от: Double, до: Double): Double
Common
JVM
JS
Native
10119
Nextfloat
GEST THE DISTFIGTIMPLIGTICLIGTIGRIGTICRIGTICRIGTICRIGTICRIGTICLIGTICLIGTIFLIGTING). и 1 (исключительно).
весело nextFloat(): Float
Common
JVM
JS
Native
1.0
nextInt
Получает следующее случайное Int
из генератора случайных чисел
fun nextInt(): Int
Получает следующее случайное неотрицательное число Int
из генератора случайных чисел, меньше указанного до границы.
fun nextInt(until: Int): Int
Получает следующее случайное число Int
из генератора случайных чисел в указанном диапазоне.
Fun Nextint (от: int, до: int): int
Common
JVM
JS
Native
1,0
Nextlong
GetS the The Next Gensal.
fun nextLong(): Long
Получает следующее случайное неотрицательное число Long
из генератора случайных чисел, меньше указанного до ограничения.
fun nextLong(until: Long): Long
Получает следующее случайное число Long
из генератора случайных чисел в указанном диапазоне.
fun nextLong(от: Long до: Long): Long
Функции расширения
JVM
1.3
asJavaRandom
Создает экземпляр java.util.Random, который использует указанный генератор случайных чисел Kotlin в качестве источника случайности.
Обычный
JVM
JS
Родной
1.3
nextInt
Получает следующее случайное Int
из генератора случайных чисел в указанном диапазоне. 1.3
Common
JVM
JS
Native
1.3
nextUBytes
Заполняет указанный массив байтов без знака случайными байтами и возвращает его.
Создает массив байтов без знака указанного размера, заполненный случайными байтами.
Заполняет поддиапазон указанного массива UByte
, начиная с fromIndex включительно и заканчивая toIndex исключая случайными UBytes.
fun nextBytes(
array: ByteArray,
fromIndex: Int,
toIndex: Int
): ByteArray
fun nextDouble(): Double
Double
из генератора случайных чисел, меньше указанного до ограничения. fun nextDouble(until: Double): Double
Double
из генератора случайных чисел в указанном диапазоне. Fun Nextduble (от: Double, до: Double): Double
весело nextFloat(): Float
Int
из генератора случайных чисел fun nextInt(): Int
Int
из генератора случайных чисел, меньше указанного до границы. fun nextInt(until: Int): Int
Int
из генератора случайных чисел в указанном диапазоне. Fun Nextint (от: int, до: int): int
fun nextLong(): Long
Long
из генератора случайных чисел, меньше указанного до ограничения. fun nextLong(until: Long): Long
Long
из генератора случайных чисел в указанном диапазоне. fun nextLong(от: Long до: Long): Long
Int
из генератора случайных чисел в указанном диапазоне. 1.3 UByte
, начиная с fromIndex включительно и заканчивая toIndex исключая случайными UBytes.