public static String porSigla(String sigla) {
for (TEstado estado : TEstado.values())
if (estado.sigla.equals(sigla))
return estado;
throw new IllegalArgumentException(“Sigla inexistente!”);
}
}
[/code]
Aí vc usa assim:
TEstado estado = TEstado.porSigla("RO");
Se precisar realmente de performance, crie um mapa:
private Map<String, TEstado> siglaParaEstado = new HashMap<String, Estado>();
public void carregarMapa() {
for (TEstado estado : TEstado.values()) {
siglaParaEstado.put(estado.toString(), estado);
}
}
public TEstado estadoPelaSigla(String sigla) {
return siglaParaEstado.get(sigla);
}