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

ENUM COM PALAVRAS CONTENDO ESPAÇO

Gostaria de saber como utilizar palavras nos enums, exemplo:

São Paulo, Rio de Janeiro, Porto Alegre

Porque o enum não aceita esses espaços.

E gostaria de jogar isto dentro de um arrayList para carregar em um drop down, poderiam me ajudar ?

7 respostas

Oi Renan, tudo bem ?

A galera chama geralmente dividido por _

E para aparecer bonitinho todo enum tem o método chamado getName.

Você pode sobreescrever para cada valor esse método :

SAO_PAULO {

    String getName(){
        return "São Paulo";
    }

}

Como eu jogo esses valores que retornam, dentro de uma lista de strings ?

Você não precisa fazer isso, pode jogar a lista de enums direto na tela :D

Ele não esta entendendo que o getName é uma sobrescrita do método do ENUM, se eu coloco @Override, ele fica com erro.

perdão, conferi agora, o método é apenas name()


public enum Filial implements Serializable {

    CURITIBA("Curitiba"), 
    SAO_PAULO("São Paulo"), 
    BRASILIA("Brasília"), 
    RIO_DE_JANEIRO("Rio de Janeiro"), 
    MANAUS("Manaus"), 
    PORTO_ALEGRE("Porto Alegre");

    private String displayName;

    private Filial(String displayName) {
        this.displayName = displayName;
    }

    public String displayName() {
        return this.displayName;
    }

    @Override
    public String toString() {
        return this.displayName;
    }
}

Matheus, eu consegui resolver assim, algum problema futuro eu irei ter com esta implementação ?

solução!

Nenhum a priori