Я пытаюсь генерировать случайные числа в Java в заданном диапазоне со следующим кодом:
int randomNum = rand.nextInt((max - min) + 1) + min;
Но это только генерирует числа для меня в наборе целых чисел. Как я могу получить числа, которые также являются десятичными?
rand
должен быть методnextDouble
. Этот метод не принимает аргументов, поскольку генерирует число от 0,0 до 1,0. Чтобы настроить это число в соответствии с вашим диапазоном, вы можете использовать код, подобный этому:Это очень полезный метод, очень важно использовать
nextDouble()
В качестве примера:
Используя метод, описанный выше, запишите 100 случайных чисел между значениями 1,1 и 2,5:
смотрите демо здесь!
не могли бы вы использовать это
Что создаст случайное число от 1 до 19 с десятичными знаками.
Вы можете сгенерировать случайное число, в котором минимальное значение равно (
min + 100
), а затем разделить полученное число на100.0
. Таким образом, вы получите число с двумя десятичными знаками:Вы можете использовать этот код , только будьте осторожны, чтобы этот код никогда не дал вам значения
max
:Используйте класс
Math
, хотя, конечно, вы могли бы также использовать функциюnextDouble
классаRandom
.