Random + vetor = muita "repetição" [ RESOLVIDO ]

Boa noite a todos,
Seguinte galera estou com um certo problema, tenho uma “imagem.txt” ou seja uma imagem literalmente desenhada em um txt onde existem espaços vazios, asteriscos ( * ) e um “X” que é o ponto onde devo chegar, existe um robo que literalmente vai “procurando” o X pela imagem, eu usoum objeto da classe Random para que ele gere um número de 0 a 2 que seria correspondente aos valores -1 , 0 , 1 em um outro vetor que faz com que ele mude de linha ou coluna na minha matriz onde está o txt…o problema é o seguinte:
Após umas 8 vezes que esse Random é utilizado o robo literalmente “vicia” e fica “andando em circulos” pois em um momento eu consigo obter um -1 ai ele “desce uma linha ou volta uma coluna” porem logo em seguida eu obtenho 1 que faz com que ele volte pra onde estava…existe uma forma de ocorrer menos repetição nesse random ?

[]'s
Marcelo

Declare sua variável do tipo java.util.Random como static e a instancie apenas uma vez. Não a instancie dentro do seu loop. Exemplo:

import java.security.SecureRandom;
...
static Random r = new SecureRandom();
...


while (!alcancou seu objetivo) {
    int dir = r.nextInt (3) - 1; // resultado = -1, 0 ou +1
    ...
}

Muito obrigado thingol era isso mesmo que eu estava precisando