Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Variável random

Fala galera! Apenas uma pequena dúvida, e também vai me ajudar muito. Minha professora solicitou na faculdade pra criarmos um protótipo de criptografia. Apenas pra fixar conteúdo. Eu usei o java pra inventar algo.

criei o seguinte código :

 private static Random random = new Random();
 private static Integer result = random.nextInt() + random.nextInt();

 public static final String A = UUID.randomUUID().toString().substring(0, 36) + result.toString() + "1";

dai eu pego essa variável, e sempre que digitar o caractere "A" ele gera um valor randomico... Minha dúvida é se consigo pegar o valor desta variável A "criptografada de forma random" e fazer o reverso!

 ex: String resultCriptogrado = "ass1232-asda-1342" (ao digitar "A").

e mostrar o valor ao qual esse resultado se refere.

omiti o resto pois é apenas implementação.

5 respostas

Oi Williams, pelo que vi, os primeiros 36 caracteres referentes a constante A, serão sempre os mesmos considerando o final que não permite modificações no valor. Então me parece uma comparação simples, não?

Oi Wanderson, em cada aparição de uma caractere "A" ele muda, gera um código diferente, mesma coisa com as demais letras. Me desculpe minha ignorância, sou leigo. Apenas tentando fixar os conhecimentos pra chegar a um nível mais alto. Poderia pegar o valor retornado da constante A e salvar salvar em outra variavel e depois comparar?

solução!

Hm, pelo que sei de Java Williams, ao você declarar o atributo ali como final, o valor dele não poderia ser mudado em tempo de execução, claro. Então, sim, faz sentido que ele gere um novo código para letra A para cada execução (parar e executar novamente).

Se ele muda em cada aparição, você não tem como fazer o processo inverso, não pelo que eu entendo.

Se eu digitar duas vezes a letra A em sequência, ele gera códigos diferentes?

Realmente Wanderson. Logo após sua primeira resposta fiquei estudando meu código e consegui resolver. E com essa de hoje me ajudou ainda mais a melhorar minha solução, estava com a cabeça tão voltada na solução que não observei os minimos detalhes.

Obrigado irmão.

Opa, pode descrever pra gente como fez?