Encodera

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.

Справочник Java

Random

Генератор случайных чисел: целые в диапазоне, дробные, boolean.

Доступно с: Java 1.0

Синтаксис

public class Random implements RandomGenerator

Примеры

С заданным начальным значением (seed) последовательность всегда одинаковая — удобно для тестов:

void main() {
    var random = new Random(42);
    IO.println(random.nextInt(100));
    IO.println(random.nextInt(1, 7));
    IO.println(random.nextBoolean());
}

Результат:

30
4
true

Без seed каждый запуск даёт разные числа — например, случайный элемент списка:

void main() {
    List<String> colors = List.of("red", "green", "blue");
    var random = new Random();
    IO.println(colors.get(random.nextInt(colors.size())));
}

Результат:

green

Примечания

nextInt(bound) возвращает число от 0 до bound - 1, nextInt(origin, bound) (Java 17) — от origin до bound - 1. Вывод второго примера случайный. Для паролей и токенов Random не подходит — нужен SecureRandom. Перемешать список можно через Collections.shuffle(list).

См. также

  • ThreadLocalRandom — Готовый генератор случайных чисел, который не нужно создавать; быстрый и в многопоточном коде.
  • Math.random() — Возвращает случайное дробное число от 0 (включительно) до 1 (не включительно).

Вопросы и ответы по теме

В учебнике

  • Операторы — Арифметические операторы Java, целочисленное деление и остаток, составное присваивание, инкремент, сравнение и логические операторы.

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.