Liczby pseudolosowe są udostępniane jako wynik działania generatora liczb pseudolosowych. W przypadku języka Java za działanie generatora odpowiada klasa Random. Przykładem użycia jest poniższy program:
import java.util.Random;
public class LiczbyLosowe {
public static void main(String[] args) {
Random rand=new Random();
System.out.println(rand.nextInt());
}
}
Po zaimportowaniu odpowiedniej biblioteki możemy przystąpić do stworzenia instancji rand klasy Random. Posiadając instancję możemy powoływać się na metody udostępnione w ramach tej klasy. Do najczęściej przydatnych należą:
- nextInt() – generujący liczbę pseudolosową w pełnym zakresie int.
- nextLong() – generujący liczbę pseudolosową w zakresie 248 wartości – z uwagi na fakt, że generator pseudolosowy klasy Random pracuje na 48 bitowym rejestrze, nie zwróci wartości losowej z całego zakresu typu long.
- nextBoolean() – generujący losowo true, lub false.
- nextFloat() – generujący wartości w zakresie <0 … 1) o pojedynczej precyzji.
- nextDouble() – generujący wartości w zakresie <0 … 1) o podwójnej precyzji.
W celu wylosowania wartości pseudolosowych z zakresu np. <0…100) należy użyć metod matematycznych opartych na przykład na sumie modulo tak jak w poniższym przykładzie:
import java.util.Random;
public class LiczbyLosowe {
public static void main(String[] args) {
Random rand=new Random();
System.out.println(rand.nextInt() % 10); // wartości w zakresie (-10...10)
System.out.println(abs(rand.nextInt() % 10)); // wartości bezwzględne w zakresie <0...10)
System.out.println(abs(rand.nextInt() % 10)+50); // wartości "z offsetem" w zakresie <50...60)
System.out.println((int)(rand.nextFloat() * 10)); // wartości w zakresie <0...10)
}
}