Definir Semente Aleatória em Java

Aryan Tyagi 12 outubro 2023
  1. Use a função setSeed() para definir a semente para números aleatórios em Java
  2. Use o construtor Random para definir a semente para o número aleatório em Java
Definir Semente Aleatória em Java

Uma semente é um número ou vetor atribuído a um gerador pseudo-aleatório para produzir a sequência necessária de valores aleatórios. Se passarmos a mesma semente, ele irá gerar a mesma sequência. Normalmente atribuímos a semente como hora do sistema. Dessa forma, ele produzirá uma sequência diferente a cada vez.

Discutiremos como gerar números aleatórios usando semente em Java neste artigo.

Use a função setSeed() para definir a semente para números aleatórios em Java

A função setSeed() da classe Random usa uma única semente longa para definir a semente do gerador de número aleatório. Nós o usamos com o objeto Random.

Por exemplo,

import java.util.Random;

public class JavaRandomSetSeedDemo {
  public static void main(String[] args) {
    Random randomobj = new Random();
    long seed = 100;
    randomobj.setSeed(seed);
    System.out.println("Random Integer value : " + randomobj.nextInt());
  }
}

Resultado:

Random Integer value : -1193959466

Use o construtor Random para definir a semente para o número aleatório em Java

Também podemos chamar o construtor de argumento zero para obter uma semente diferente a cada vez. A semente é o valor inicial do estado interno do gerador de números pseudo-aleatórios, manipulado pelo método nextInt().

Por exemplo,

import java.util.Random;

public class RadomSeeddemo {
  public static void main(String[] args) {
    Random randomobj1 = new Random(100);
    System.out.println("Random number using the Constructor");
    System.out.println(randomobj1.nextInt());
  }
}

Resultado:

Random number using the Constructor - 1193959466

Artigo relacionado - Java Random