Como gerar palavras aleatoriamente em Java

A maioria dos programas Java não funcionam corretamente na primeira vez que você executá-los, e alguns programas não funcionam sem extensa tentativa e erro de sua parte. Este código é um caso em questão.

Para escrever este código, você precisa encontrar uma maneira para gerar palavras de três letras aleatoriamente. Este código iria dar-lhe o resultado desejado:

anAccount.lastName = "" + (char) (myRandom.nextInt (26) + 'A') + (char) (myRandom.nextInt (26) + 'a') + (char) (myRandom.nextInt (26) + 'uma')-

Aqui está como o código funciona:

  • Cada chamada para o Random.nextInt (26)gera um número de 0 a 25.

  • adicionando'UMA'dá-lhe um número 65-90.

    Para armazenar uma carta 'UMA', o computador coloca o número 65 em sua memória. É por isso que a adição de 'UMA' a 0 dá-lhe 65 e porque a adição de 'UMA' a 25 dá-lhe 90.

  • Aplicando(Char)para um número de voltas em um o número carbonizar valor.

    Para armazenar as letras 'UMA' através 'Z', o computador coloca os números 65 a 90 na sua memória. Assim, aplicando (Char) a um número 65-90 transforma o número em uma letra maiúscula.

Pausa para um breve resumo. A expressão (Char) (myRandom.nextInt (26) + 'A') representa uma letra maiúscula gerado aleatoriamente. De um modo semelhante, (Char) (myRandom.nextInt (26) + 'a') representa uma letra minúscula gerado aleatoriamente.

Cuidado! O próximo par de passos pode ser complicado.

  • Java não permitem atribuir umcarbonizarvalor a uma variável de cadeia.

    A seguinte declaração levaria a um erro do compilador:

    // Bad declaração: anAccount.lastName = (char) (myRandom.nextInt (26) + 'A') -
  • Em Java, você pode usar um sinal de adição para adicionar umcarbonizarvalor a uma string. Quando o fizer, o resultado é uma string.

    assim "" + (Char) (myRandom.nextInt (26) + 'A') é uma string contendo uma letra maiúscula gerado aleatoriamente. E quando você adiciona (Char) (myRandom.nextInt (26) + 'a') para o final dessa cadeia, você começa uma outra string - uma string contendo dois caracteres gerados aleatoriamente

    Finalmente, quando você adicionar outro (Char) (myRandom.nextInt (26) + 'a') para o final dessa cadeia, você tem uma cadeia que contém três caracteres gerados aleatoriamente. Assim, você pode atribuir esse grande corda para anAccount.lastName. É assim que a declaração funciona.

Quando você escreve um programa, você tem que ter muito cuidado com os números, carbonizar valores e cordas. Este não é o tipo de programação que você faz todos os dias da semana, mas é uma lição que você precisa ser persistente na sua programação Java.

menu