1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Número aleatório Java

Discussão em 'Programação' iniciada por ThatsMe, 9 de Junho de 2009. (Respostas: 5; Visualizações: 1423)

  1. ThatsMe

    ThatsMe [email protected] Member

    Boas.

    Preciso de fazer um número aleatório em java. Ora, esse número tem que ser inteiro e convém que tenha uns 8 dígitos.

    Andei a Googlar mas os exemplos que vi eram demasiadamente elaborados (penso eu) para o que preciso.

    Ajuda pf? :)

    Cumps.
     
  2. cybersurfer

    cybersurfer Power Member

    (int)Math.random()*99999999
     
  3. AliFromCairo

    AliFromCairo Power Member

    Se necessitas de ter exactamente o número de dígitos que indicaste, então o método standard é utilizares algo do género:

    Código:
    10000000 + (int)(Math.random() * ((99999999 - 10000000) + 1));
    // ou
    new Random().nextInt(99999999 - 10000000 + 1) + 10000000;
    // ou, de uma forma genérica:
    new Random().nextInt(max - min + 1) + min;
    // max = 99999999
    
     
    Última edição: 10 de Junho de 2009
  4. ThatsMe

    ThatsMe [email protected] Member

    E posso fazer int var=(int)Math.ramdon()*99999999; ?

    Não preciso de ter exactamente o número de digitos que disse, por isso penso que seja melhor optar pela 1ª forma, é mais simples :) Obrigado na mesma.
     
  5. AliFromCairo

    AliFromCairo Power Member

    Sim, podes fazer essa atribuição. No entanto, esse código tem um problema uma vez que não te permite obter o número 99999999 (devido ao limite superior do método random ser exclusivo). Para corrigires, precisas de utilizar o seguinte:

    Código:
    int i = (int)(Math.random() * (99999999 + 1));
    
     
  6. ThatsMe

    ThatsMe [email protected] Member

    Problema resolvido :) Obrigado.
     

Partilhar esta Página