Estou tendo um pequeno grande problema que não estou conseguindo resolver.
Tenho uma classe chamada Transforma, está classe tem um metodo pega uma string que pode conter números, letras entre outros caracteres, e transforma esses caracteres em uma espécie de código, Exemplo eu escrevo ?WOrlando? ela me devolve a string ?2315101101130423?
[code]public class Transforma {
String transforma = "";
Tabela1 codigo = new Tabela1();
public String Codifica(String texto) {
int length;// variavel para o tamanho da string para codificar
length = texto.length();// pega o tamanho da string
for (int i = 0; i < length; i++) {// for para transformar a string
// buscando e tranformando a string
transforma += codigo
.Transforma(Character.toString((texto.charAt(i))));
}
return transforma;// retorna a string completa
}[/code]
O problema é o objeto ?codigo?, que no caso é o objeto que contem os códigos, esse objeto foi criado utilizando a classe Tabela1
public class Tabela1 {
[code] public String Transforma(String letra) {
switch (letra) {
case (“A”):
return “01”;
case (“B”):
return “02”;
case (“C”):
return “03”;
case (“D”):
return “04”;
case (“E”):
return “05”;
case (“F”):
return “06”;
case (“G”):
return “07”;
//…
}
return "(ERRO: "+letra+" )";
}
}[/code]
que contem os códigos utilizados para transformar a string, porem eu possuo 6 tabelas, Tabela1, Tabela2, Tabela3…; ambas são iguais mudando somente o valor de retorno. Essas tabelas são usadas cada vez que uma String é passada, podendo ser qualquer uma das 6 tabelas, neste caso pretendo usar um Random para escolher a tabela, o problema é como criar um objeto ?codigo?, ou algo satisfatório para que possa utilizar todas as tabelas; pensei em usar uma classe genérica, mas não consegui, não sei muito bem ainda como utiliza generic, mas eu tinha pensado(isso é se for possível) em simplesmente criar um objeto genérico e instanciar com a tabela escolhida pelo ramdon, não tenho mais ideias já tentei um monte de coisa, alguém tem alguma ideia para me ajudar.