it-roy-ru.com

Как я могу сгенерировать случайное число в определенном диапазоне?

Как я могу создать приложение, которое генерирует случайное число в Android, используя Eclipse, а затем отображать результат в поле TextView? Случайное число должно находиться в диапазоне, выбранном пользователем. Таким образом, пользователь введет максимальное и минимальное значения диапазона, а затем я выведу ответ.

28
user3182651

Чтобы расширить то, что сказал Рахул Гупта:

Вы можете использовать функцию Java int random = Random.nextInt(n).
Возвращает случайную int в диапазоне [0, n-1]

Т.е. для получения диапазона [20, 80] используйте:

final int random = new Random().nextInt(61) + 20; // [0, 60] + 20 => [20, 80]

Чтобы обобщить больше:

final int min = 20;
final int max = 80;
final int random = new Random().nextInt((max - min) + 1) + min;
74
Fantômas
Random r = new Random();
int i1 = r.nextInt(45 - 28) + 28;

Это дает случайное целое число от 28 (включительно) до 45 (исключая), одно из 28,29, ..., 43,44.

13
Narendra Sorathiya

Кроме того, с уровня API 21 это возможно:

int random = ThreadLocalRandom.current().nextInt(min, max);
3
Deplover

«Пользователь - это тот, кто выбирает« Макс. нет »и« Мин. Нет »? Что вы подразумеваете под этой строкой?

Вы можете использовать функцию Java int random = Random.nextInt(n). Это возвращает случайное int в диапазоне [0, n-1]). 

и вы можете установить его в своем текстовом представлении, используя метод setText()

3
Rahul Gupta
private int getRandomNumber(int min,int max) {
    return (new Random()).nextInt((max - min) + 1) + min;
}
1
Gil SH

Вы можете использовать If Random. Например, это генерирует случайное число от 75 до 100.

final int random = new Random().nextInt(26) + 75;
1
Developer

Генератор случайных чисел в Android Если вы хотите узнать о генераторе случайных чисел в Android, то вам следует прочитать эту статью до конца. Здесь вы можете получить всю информацию о генераторе случайных чисел в Android. Генератор случайных чисел в Android

Вы должны использовать этот код в вашем файле Java.

Random r = new Random();
                    int randomNumber = r.nextInt(100);
                    tv.setText(String.valueOf(randomNumber));

Я надеюсь, что этот ответ может быть полезным для вас. Если вы хотите прочитать больше об этой статье, то вам следует прочитать эту статью. Генератор случайных чисел

0
sumit singh

Таким образом, вы хотели бы следующее:

int random;
int max;
int min;

... где-то в вашем коде поместите метод, чтобы получить минимальное и максимальное значения от пользователя, когда они нажимают кнопку «Отправить», а затем использовать их в следующей строке кода:

random = Random.nextInt(max-min+1)+min;

Это установит случайное число в случайное число между выбранным пользователем min и max . Затем вы сделаете:

TextView.setText(random.toString());
0
BobbyD17