Duvida: Exibir todos os itens do ENUM

O codigo abaixo deveria exibir a lista dos 3 dias da semana que estão listados no enum
Porem isso não aconteçe

[code]public class Aplicação {

public enum DiasDaSemana {
	SEGUNDA,
	TERÇA,
	QUARTA
}

public static void main(String[] args) {

DiasDaSemana[] array = DiasDaSemana.values();
System.out.println(array.toString());

}
}[/code]

Quando executo o codigo abaixo ele me da a seguinte resposta:

[LAplicação$DiasDaSemana;@19821f

Eu ja ouvi sobre isso no curso, mas, se não me engano, a solução era por .toString().
Mesmo depois de colocado .toString() não foi exebido a lista dos 3 dias da semana

o array na verdade é um objeto e vc está imprimindo o hashcode dele.

segue o código corrigido :wink:

[code]
public class Aplicacao {

public enum DiasDaSemana {
	SEGUNDA, TERÇA, QUARTA
}

public static void main(String[] args) {

	DiasDaSemana[] array = DiasDaSemana.values();
	System.out.println(array[0]);
	System.out.println(array[1]);
	System.out.println(array[2]);
}

}[/code]


 public  class Aplicacao {  
   
     public enum DiasDaSemana {  
         SEGUNDA,  
         TERÇA,  
         QUARTA  
     }  
       
     public static void main(String[] args) {  
       
     DiasDaSemana[] array = DiasDaSemana.values();  
     for(int i = 0 ;i< array.length ; i++){
    	 System.out.println(array[i]);  
     }
 
 }  
 }

[quote=Allan2M]O codigo abaixo deveria exibir a lista dos 3 dias da semana que estão listados no enum
Porem isso não aconteçe

[code]public class Aplicação {

public enum DiasDaSemana {
	SEGUNDA,
	TERÇA,
	QUARTA
}

public static void main(String[] args) {

DiasDaSemana[] array = DiasDaSemana.values();
System.out.println(array.toString());

}
}[/code]

Quando executo o codigo abaixo ele me da a seguinte resposta:

[LAplicação$DiasDaSemana;@19821f

Eu ja ouvi sobre isso no curso, mas, se não me engano, a solução era por .toString().
Mesmo depois de colocado .toString() não foi exebido a lista dos 3 dias da semana[/quote]

DiasDaSemana[] array = DiasDaSemana.values(); for(DiasDaSemana dias : array){ // imprimi dias }

[quote=silvaesouza]o array na verdade é um objeto e vc está imprimindo o hashcode dele.

segue o código corrigido :wink:

[code]
public class Aplicacao {

public enum DiasDaSemana {
	SEGUNDA, TERÇA, QUARTA
}

public static void main(String[] args) {

	DiasDaSemana[] array = DiasDaSemana.values();
	System.out.println(array[0]);
	System.out.println(array[1]);
	System.out.println(array[2]);
}

}[/code][/quote]

Funcionou, agora ja entendi como funciona, cada item do enum vai dentro do array e o numero é por ordem que eles estão :smiley:

Muito obrigado silvaesouza.

1. public class Aplicacao { 2. 3. public enum DiasDaSemana { 4. SEGUNDA, 5. TERÇA, 6. QUARTA 7. } 8. 9. public static void main(String[] args) { 10. 11. DiasDaSemana[] array = DiasDaSemana.values(); 12. for(int i = 0 ;i< array.length ; i++){ 13. System.out.println(array[i]); 14. } 15. 16. } 17. }

fhsantiago achei sua solução MUITISSIMO interessante, é otima para quem tem varias opções no enum, achei muito legal, só tenho 1 duvida

;i< array.length, nesse caso array.lengh é até onde vai as opções do enum? é como se eu colocasse (neste exemplo) i< 4?

é o tamanho da sua lista de dias da semana. vc colocando o valor fixo nao fica bom pq se algum dia adicionar mais um item no enum o codigo nao funciona. fazendo como fiz qualquer alttercao no enum sempre vai continuar funcionando.

um abraco;