La clase aleatoria tiene un método para generar int aleatorio en un rango dado. Por ejemplo:
Random r = new Random();
int x = r.nextInt(100);
Esto generaría un número int más o igual a 0 y menos de 100. Me gustaría hacer exactamente lo mismo con un número largo.
long y = magicRandomLongGenerator(100);
La clase aleatoria solo tiene nextLong (), pero no permite establecer el rango.
java.util.Random
solo usa una distribución de 48 bits (ver detalles de implementación), por lo que no tendrá una distribución normal.