Java генерирует случайное число между двумя заданными значениями

Я хотел бы знать, как создать случайное число между двумя заданными значениями.

Я могу сгенерировать случайное число со следующим:

Random r = new Random(); for(int i = 0; i < a.length; i++){ for(int j = 0; j < a[i].length; j++){ a[i][j] = r.nextInt(); } } 

Однако, как я могу создать случайное число от 0 до 100 (включительно)?

Спасибо вам всем.

Вы можете использовать, например, r.nextInt(101)

Для более общего «между двумя числами» используйте:

 Random r = new Random(); int Low = 10; int High = 100; int Result = r.nextInt(High-Low) + Low; 

Это дает вам случайное число между 10 (включительно) и 100 (эксклюзивным)

Предполагая, что верхняя граница верхней границы, а нижняя – нижняя граница, вы можете сделать случайное число r между двумя границами:

 int r = (int) (Math.random() * (upper - lower)) + lower; 

Э-э …

 int Random = (int)(Math.random()*100); 

если вам нужно сгенерировать более одного значения, то просто используйте для цикла для этого

  for (int i = 1; i <= 10 ; i++) { int Random = (int)(Math.random()*100); System.out.println(Random); } 

Если вы хотите указать более приличный диапазон, например, от 10 до 100 (оба находятся в диапазоне)

поэтому код будет:

  int Random =10 + (int)(Math.random()*(91)); /* int Random = (min.value ) + (int)(Math.random()* ( Max - Min + 1)); *Where min is the smallest value You want to be the smallest number possible to generate and Max is the biggest possible number to generate*/ 

Как это,

 Random random = new Random(); int randomNumber = random.nextInt(upperBound - lowerBound) + lowerBound; 

Используйте Random.nextInt (int) .

В вашем случае это будет выглядеть примерно так:

 a[i][j] = r.nextInt(101); 

Java не имеет генератора случайных чисел между двумя значениями так же, как это делает Python. Для генерации Random это фактически принимает только одно значение. Тогда вам нужно добавить ОДИН НЕКОТОРЫЙ НОМЕР к числу сгенерированных, что приведет к тому, что число будет в пределах диапазона. Например:

 package RandGen; import java.util.Random; public class RandGen { public static Random numGen =new Random(); public static int RandNum(){ int rand = Math.abs((100)+numGen.nextInt(100)); return rand; } public static void main(String[]Args){ System.out.println(RandNum()); } 

}

Функция этой программы целиком лежит в строке 6 (первая начинается с «int rand …». Обратите внимание, что Math.abs () просто преобразует число в абсолютное значение и объявляется как int, это не очень важно. (100) – это число, которое Я ДОБАВЛЯЮ, к случайному. Это означает, что новый номер выхода будет случайным числом + 100. numGen.nextInt () – это значение самого случайного числа, и потому, что я положил (100) в его круглых скобках – любое число от 1 до 100. Поэтому, когда я добавляю 100, оно становится числом от 101 до 200. Вы не являетесь GENERATING числом от 100 до 200, вы добавляете значение между 1 и 100.

Можно также попробовать следующее:

 public class RandomInt { public static void main(String[] args) { int n1 = Integer.parseInt(args[0]); int n2 = Integer.parseInt(args[1]); double Random; if (n1 != n2) { if (n1 > n2) { Random = n2 + (Math.random() * (n1 - n2)); System.out.println("Your random number is: " + Random); } else { Random = n1 + (Math.random() * (n2 - n1)); System.out.println("Your random number is: " +Random); } } else { System.out.println("Please provide valid Range " +n1+ " " +n2+ " are equal numbers." ); } } } 
Давайте будем гением компьютера.