Ваша проблема: randomNumbers
объявлен как int
, поэтому, когда вы используете +
в других целых числах, он будет суммировать целые числа, а не объединять их.
Итак, если мыЕсли бы мы использовали ваш подход, нам понадобилась бы строка:
String userName = initials + randomNumber1 + randomNumber2 + randomNumber3;
Но было бы намного проще просто сгенерировать число от 0 до 999 и дополнить его нулями:
int randomNumber = generator.nextInt(1000);
String usernName = initials + String.format("%03d", randomNumber);
Что еще стоит отметить, это то, что Random.nextInt(n)
генерирует случайное число между 0 (включительно) и n
(эксклюзивом), так что вы, вероятно, должны делать .nextInt(10)
, если вы хотите число от 0 до 9.