/
Вопросы и ответы
/
Java
/

Как сгенерировать рандомное число в java

Как сгенерировать рандомное число в java

4 года назад

Человек-Молекула

Ответы

0

Можно использовать метод Math.random():

По умолчанию Math.random() генерирует случайные вещественные числа из промежутка [0;1), то есть от нуля включительно до 1 исключительно. Причем этот метод генерирует вещественные числа, например 0,999.

public class Test { public static void main(String[] args){ double a = Math.random(); System.out.println (a); } }

А что если нам нужно сгенерировать целочисленную переменную? Например нам нужно сгенерировать число от 0 до 2. Вот решение:

public class Test { public static void main(String[] args){ int a = (int) ( Math.random() * 3 ); } }

Как это работает?

Шаг №1: Диапазон [0;1) умножаем на 3. Соответственно,

Нижняя граница: 0*3 =0

Верхняя граница

*3 =3

Получили диапазон [0;3). Скобка после числа 3 круглая. Это значит, что 3 не входит в диапазон, то есть максимальное число, которое может быть сгенерировано в этом диапазоне это 2,999. Одним словом - мы имеем дело с вещественными (дробными) числами.

Шаг №2: Поэтому применяем (int) перед Math.random()*3. Дробная часть отсекается и мы получаем диапазон [0;2]

3 года назад

Ilnaz Kamalov