Le enumerazioni sono una caratteristica aggiunta al linguaggio di programmazione Java in Java 1.5. Consentono agli sviluppatori di creare un insieme di valori che sono strettamente connesse, a cui fa riferimento un nome comprensibile e forzare l'utilizzo di un numero finito di valori. Le enumerazioni contengono anche dati aggiuntivi relativi al loro tipo, ad esempio il valore ordinale dell'enum, l'indice di cui il valore è definito nel tipo enum. Questo può tornare utile in varie situazioni, ad esempio utilizzando le enumerazioni per rappresentare l'indice di una matrice o un tipo di dati di elenco.
Istruzioni
1
Creare un tipo enum. In Eclipse, fare clic con il pulsante destro sulla cartella src del progetto, selezionare "Nuovo" dal menu contestuale e selezionare "Enum" dal sottomenu. Il nome vostro enum qualunque gradite; Questo articolo viene utilizzato "TestEnum" per semplicità.
2
Aggiungere alcuni valori al vostro enum. Se non ti senti molto creativo, si può basta copiare e incollare il seguente:
public enum TestEnum {
THE_FIRST_VALUE,
THE_SECOND_VALUE,
ANOTHER_VALUE,
YET_ANOTHER_VALUE;
}
3
Aggiungere un'altra classe al progetto..--ancora una volta, denominata qualunque cosa ti piace..--e assicurarsi di avere selezionata la casella di controllo "public static void main (String [] args)".
4
Nel metodo main, aggiungere il codice riportato di seguito:
Te TestEnum = TestEnum.ANOTHER_VALUE;
int intVal = te.ordinal();
System.out.println ("Il numero ordinale per" + te.toString() + "is" + intVal);
Se si esegue questo, si dovrebbe ottenere console di output simile al seguente:
È il numero ordinale per ANOTHER_VALUE 2
Si noti che il valore ordinale è in base zero, come gli indici di matrice; Questo può essere un po' confuso all'inizio se non si aspetta di esso.
Consigli & Avvertenze
- Utilizzando il valore ordinale di un enum può essere utile quando si lavora con dati indicizzati strutture, come le matrici o elenchi. Ad esempio, è possibile creare una matrice di stringhe che sono rappresentati da enum specificato, quindi le stringhe in un metodo di riferimento in questo modo:
- public String getString (TestEnum te) {
- Return theStrings[te.ordinal();]
- }
- Solo per ribadire il punto nell'ultimo passaggio, tenete a mente che gli ordinali sono in base zero. Sono anche dipendente sull'ordine dei valori enum - fase di compilazione se si sposta ANOTHER_VALUE fino al primo elemento, si otterrà 0 come output invece di 2.