2015-09-28 2 views
1

Новое на Java. Не полный новичок, но почти.извлекать определенные числа от случайного генерирования

Я хотел бы сгенерировать 9 чисел между 9 и 18 и извлечь # 1 и # 5. У меня есть что-то для поколения, но я не знаю, как извлечь из этого определенный номер.

Я получил это за поколение:

Random rn = new Random(); 
int range = max - min + 1; 
int randomNum = rn.nextInt(range) + min; 
      System.out.print(randomNum + " "); 

Большое спасибо за вашу помощь !!!

+0

Просто запустите код в девять раз и сохранить только первый и пятый работает. Также я должен признать, что не могу понять, почему вы хотите это сделать. – Mureinik

+0

Номера случайны с равномерным распределением, поэтому почему бы просто не использовать первые два значения, которые вы получаете из последовательности ('nextInt()')? –

+1

Создайте массив длиной 9, запустите его девять раз (сохраняя каждый результат), затем возьмите два значения. – MFazio23

ответ

0

Вы можете сохранить все 9 сгенерированных чисел в массиве и получить первый и пятый из них!

Random rn = new Random(); 
int range = max - min + 1; 
int[] rndNumbers = new int[9]; 

for (int i = 0; i < 9; i++) { 
    rndNumbers[i] = rn.nextInt(range) + min; 
} 

rndNumbers[0]... //Do something with #1 
rndNumbers[4]... //Do something with #5 

Другая возможность просто сохранить первое и пятое значение:

Random rn = new Random(); 
int range = max - min + 1; 
int first = 0, fifth = 0; 

for (int i = 0; i < 9; i++) { 
    int randomNumber = rn.nextInt(range) + min; 
    if (i == 0)          // first element 
     first = randomNumber; 
    else if (i == 4)        // fifth element 
     fifth = randomNumber; 
} 
+1

Perfect. Прекрасно работает! всем спасибо. – Nakeele

Смежные вопросы