Problemas com a Classe Random

4 respostas
yoga

Tou tentando criar uma classe que gere uma sequencia aleatoria de 5 caracteres.

public class ObtemSerie {

private Random r = new Random();

private ichar serie[];
public ObtemSerie(){
	serie = new int[5];
	for(int i = 0; i < serie.length; i++){
		serie[i] = (char) r.nextInt(26); 
	}
}

}

Só q tah gerando só uns simbolos quadrados, esquesito!!
Alguem pode mim ajudar?

4 Respostas

yoga

foi mal, saiu sem identação.

T

Some o valor retornado por r.nextInt (26) com o valor ASCII da letra “A” (que é 65).

Ou seja:

serie[i] = (char) (‘A’ + r.nextInt(26));

antoniopopete

Eu tive problema semelhante e foi por causa do cast para char…Lembre-se que no cast para char somente numeros positivos são aceitos e o char não tem a mesma faixa de um int.
No meu caso o simbolo quadrado era porque no meu cast,gerasva um numero negativo,ai o cast ia pra esse simoblo ae.
Mas quando evitei a situacao consegui a conversao.
Confere seu cast pra char se nao fere a regra que citei.

yoga

vlw galera!!!

Criado 22 de junho de 2007
Ultima resposta 23 de jun. de 2007
Respostas 4
Participantes 3