Я пытаюсь создать генератор случайных чисел с фиксированным диапазоном от 1 до 100, который является int min = 1 и int max = 100. Мне пока удалось получить этот код. Использование BlueJ в качестве среды.
import java.util.Random;
public class RandomNumber {
public static int getRandomNumberInts(int min, int max) {
Random random = new Random();
return random.ints(min,(max+1)).findFirst().getAsInt();
}
}
Есть ли другой способ получить фиксированное число в пределах моего диапазона без необходимости вводить диапазон самостоятельно?
похоже, вы забыли опубликовать свой код.
посмотри на это: stackoverflow.com/questions/363681/…
Возможный дубликат Как мне сгенерировать случайные целые числа в определенном диапазоне в Java?
import java.util.Random; открытый класс RandomNumber {общедоступный статический int getRandomNumberInts (int min, int max) {Random random = new Random (); вернуть random.ints (мин, (макс + 1)). findFirst (). getAsInt (); }}
извините, это немного грязно, иди, почему он не позволяет мне публиковать раньше
что вы имеете в виду под without the need to enter the range myself? Как ваша программа узнает диапазон, если вы этого не скажете?
@Bentaye означает, что он автоматически даст мне случайное число, когда я вызываю метод, вместо того, чтобы все время вручную заполнять диапазон




Вы можете передать свои границы конструктору, тогда объект RandomNumber узнает их, и вы можете просто вызвать свой метод без параметров. Но ваш метод больше не может быть статичным.
public class RandomNumber {
private Random random;
private int minBound;
private int maxBound;
public RandomNumber(int minBound, int maxBound) {
this.random = new Random();
this.minBound = minBound;
this.maxBound = maxBound;
}
public int getRandomNumberInts() {
return random.ints(minBound, (maxBound + 1))
.findFirst()
.getAsInt();
}
}
Тогда вы называете это так
RandomNumber rn = new RandomNumber(1, 100);
System.out.println(rn.getRandomNumberInts());
System.out.println(rn.getRandomNumberInts());
System.out.println(rn.getRandomNumberInts());
System.out.println(rn.getRandomNumberInts());
Где твой код?