Beh sì, perché alla fine il concetto è quello.
Una cosa che forse non hai ancora appreso del tutto è che le enum diventano delle "classi" (detto in generale) molto particolari e ricevono un trattamento speciale.
Quando tu definisci una enum, il compilatore inserisce una serie di metodi impliciti, alcuni li ho già citati ( name() e valueOf() ). Ma ce n'è un altro: values(). Questo è un metodo static che restituisce un array di tutti gli oggetti (delle costanti) definiti per la enum.
Nel mio FasciaOraria il compilatore inserisce un metodo:
public static FasciaOraria[] values()
Quindi nel metodo che io ho suggerito trovaPerCodice puoi usare questo values() ... prova un po' ad immaginare come (?).![]()