Случайный класс имеет метод для генерации случайных int в заданном диапазоне. Например:
Random r = new Random();
int x = r.nextInt(100);
Это сгенерирует целое число больше или равное 0 и меньше 100. Я хотел бы сделать то же самое с длинным числом.
long y = magicRandomLongGenerator(100);
Случайный класс имеет только nextLong (), но он не позволяет устанавливать диапазон.
java.util.Random
используется только 48-битное распределение (см. подробности реализации), поэтому оно не будет иметь нормального распределения.