O objetivo dessa rotina é sortear somente os numeros que foram passados pelo collection
ArrayList<Integer> listInt = new ArrayList<Integer>();
Collections.addAll(listInt, 3, 4, 10, 11, 13, 19, 20, 21, 22, 23, 25); //o indice das palavras desejadas randomicamente
j = StringManipulation.getRandom(listInt, 26); //inicializa j -- as vezes dá um erro neste método
O método getRandom agora
public static int getRandom(ArrayList<Integer> Wanted, int i){
Random r = new Random();
int number = (int)(Math.random()*i);
// encontra o numero desejado
while (!Wanted.contains(number)) {
number = r.nextInt(number);
}
return number;
}
Alguem consegue encontrar onde está acontecendo o erro?