Sind mehrere Zufallszahlen nötig, ist eine Schleife mit wiederholten Aufrufen von nextXXX() nicht nötig; stattdessen gibt es in Random zwei Sorten von Methoden, die ein Bündel von Zufallszahlen liefern. Als erstes:
§ void nextBytes(byte[] bytes)
Füllt das Feld bytes mit Zufallsbytes auf.
Neu ab Java 8 sind drei Methoden, die einen Stream von Daten liefern:
§ LongStream longs()
§ DoubleStream doubles()
§ DoubleStream gaussians()
Beispiel: Liefere 10 zufällige Zahlen, die vermutlich Primzahlen sind:
LongStream stream = new Random().longs().filter( v -> BigInteger.valueOf( v ).isProbablePrime(5) );
stream.limit( 10 ).forEach( System.out::println );