Мне нужно размножить случайное число с ровно 6 цифрами в Java. Я знаю, что я мог бы цитировать 6 раз над случайным пользователем, но есть ли еще один способ сделать это в стандартном Java SE?
EDIT: Следующий вопрос: Теперь, когда я могу сгенерировать 6 цифр, у меня возникла новая проблема, весь ID, который я пытаюсь создать, имеет синтаксис 123456-A1B45. Итак, как мне рандомизировать последние 5 символов, которые могут быть либо A-Z, либо 0-9? Я думаю использовать значение char и randomice число от 48 до 90 и просто отказаться от любого значения, которое получает числа, которые представляют 58-64. Это способ пойти или есть лучшее решение?
ИЗМЕНИТЬ 2: Это мое окончательное решение. Спасибо за помощь всем!
protected String createRandomRegistryId(String handleId)
{
// syntax we would like to generate is DIA123456-A1B34
String val = "DI";
// char (1), random A-Z
int ranChar = 65 + (new Random()).nextInt(90-65);
char ch = (char)ranChar;
val += ch;
// numbers (6), random 0-9
Random r = new Random();
int numbers = 100000 + (int)(r.nextFloat() * 899900);
val += String.valueOf(numbers);
val += "-";
// char or numbers (5), random 0-9 A-Z
for(int i = 0; i<6;){
int ranAny = 48 + (new Random()).nextInt(90-65);
if(!(57 < ranAny && ranAny<= 65)){
char c = (char)ranAny;
val += c;
i++;
}
}
return val;
}