Dúvida questão Testkiller - Enum

Olá pessoal!
Alguém saberia me dizer o pq a alternativa D está incorreta?

  1. public class Ball {
  2. public enum Color { RED, GREEN, BLUE };
  3. public void foo() {
  4. // insert code here
  5. { System.out.println©; }
  6. }
  7. }

Which code inserted at line 14 causes the foo method to print RED, GREEN, and BLUE?

A. for( Color c : Color.values())
B. for( Color c = RED; c <= BLUE; c++)
C. for( Color c; c.hasNext() ; c.next())
D. for( Color c = Color[0]; c <= Color[2]; c++)
E. for( Color c = Color.RED; c <= Color.BLUE; c++)

Resposta correta: A

Obrigada!!! :wink:

Olá

Porque acha que seria possível incrementar c como se fosse um pointer de C?

Fora outros erros, só por este c++ já se pode eliminar B, D e E

Como não há métodos hasNext() e next() para Color, só pode ser A

[]s
Luca


Bom dia sbcamila.
Na minha opnião, é a única linha que executa corretamente, incrementando um inteiro e percorrendo corretamente os ítens do enum.
Como era uma única opção dá pra sair por eliminação, como disse o amigo.
Espero ter ajudado.
Abraço.

Bom dia sbcamila.
Na minha opnião, é a única linha que executa corretamente, incrementando um inteiro e percorrendo corretamente os ítens do enum.
Como era uma única opção dá pra sair por eliminação, como disse o amigo.
Espero ter ajudado.
Abraço.