Features of Enum in Java 5:
1. Enum is a class;
2. Enum is final and cannot be inherited, and the value cannot be overwritten;
3. You can use "=" and "equals ()" to compare enum;
Enum before Java 5:
1 Package Com. Kay. java5.test1;
2
3 Public Final Class Grade {
4
5 Public Static Final String = " A " ;
6 Public Static Final String B = " B " ;
7 Public Static Final String C = " C " ;
8 Public Static Final String d = " D " ;
9 Public Static Final String E = " E " ;
10 }
Enum in Java 5:
1 Package Com. Kay. java5.test1;
2
3 Public Enum Gradeenum {
4 A, B, C, D, E, F
5 }
6
Or:
1 Package Com. Kay. java5.test1;
2
3 Public Class Enumtest {
4
5 Private Enum Grade {a, B, c, d };
6
7 Private Static Enum Grade2 {f, g, h };
8 }
Print the content in Enum:
Package Com. Kay. java5.test1;
Public ClassTest {
Public Static Void Main (string [] ARGs ){
Gradeenum [] Ge = Gradeenum. Values (); // The values () method returns the array of all values in Enum.
For ( Int I = 0 ; I < GE. length; I ++ ){
System. Out. println (GE [I]);
}
}
}
Enum in switch:
Package Com. Kay. java5.test1;
Public ClassTest {
Private Static Enum E {a, B, c, d };
Public Static Void Main (string [] ARGs ){
Switch (E. ){
Case A:
System. Out. println ( " A " );
Break ;
Case B:
System. Out. println ( " B " );
Default :
System. Out. println ( " C or D " );
}
}
}
Enummap is a new set in Java 5 that uses enme as the key in map:
Package Com. Kay. java5.test1;
ImportJava. util. enummap;
Public Class Test {
Public Static Void Main (string [] ARGs ){
// Enummap constructor <Enum, Object>
Enummap < Gradeenum, string > Emap = New Enummap < Gradeenum, string > (Gradeenum. Class );
// Assignment
Emap. Put (gradeenum., " This is! " );
Emap. Put (gradeenum. B, " This is B! " );
Emap. Put (gradeenum. C, " This is C! " );
Emap. Put (gradeenum. D, " This is D! " );
Emap. Put (gradeenum. E, " This is e! " );
Emap. Put (gradeenum. F, " This is F! " );
// Value
System. Out. println (emap. Get (gradeenum. ));
}
}
Retrieve all values in enummap:
Gradeenum [] Ge = Gradeenum. Values ();
For ( Int I = 0 ; I < GE. length; I ++ ){
System. Out. println (emap. Get (GE [I]);
}
Enumset: Enumset es = Enumset. Allof (gradeenum. Class ); // Put all the elements in gradeenum into enumset
Enumset EE = Enumset. Of (gradeenum. A, gradeenum. B ); // Put the specified element in gradeenum into enumset
// Value
Iterator ITER = Ee. iterator ();
While (ITER. hasnext ()){
System. Out. println (ITER. Next ());
}