[size=large]Enumeration:
Enumeration为java.util中的接口
已被Iterator取代。
Enum:
Enum为java.lang中的类
1.标识符 MONDAY, TUESDAY等就称为枚举常量(enumeration constants)且不可重复。每一个枚举常量被隐式的声明成Day的一个public、static成员,而且其类型为Day,亦就是说这些常量是self-typed的。
2.下面的定义也是合法的:
package basic;
public enum Day
{
MONDAY, TUESDAT, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY,
}
或
package basic;
public enum Day
{
MONDAY, TUESDAT, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY,;
}
或
package basic;
public enum Day
{
MONDAY, TUESDAT, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY;
}
[color=blue]但是当枚举类型有其他定义时,则分号;是必须的.[/color]
3.声明、使用一个枚举类型:[/size]
一个具体的例子:
Enumeration为java.util中的接口
已被Iterator取代。
Enum:
Enum为java.lang中的类
1.标识符 MONDAY, TUESDAY等就称为枚举常量(enumeration constants)且不可重复。每一个枚举常量被隐式的声明成Day的一个public、static成员,而且其类型为Day,亦就是说这些常量是self-typed的。
2.下面的定义也是合法的:
package basic;
public enum Day
{
MONDAY, TUESDAT, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY,
}
或
package basic;
public enum Day
{
MONDAY, TUESDAT, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY,;
}
或
package basic;
public enum Day
{
MONDAY, TUESDAT, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY;
}
[color=blue]但是当枚举类型有其他定义时,则分号;是必须的.[/color]
3.声明、使用一个枚举类型:[/size]
BasicMainClass.java
package basic;
public class BasicMainClass
{
public static void main(String args[])
{
Day today = Day.SATURDAY;
System.out.println( " Today is " + today.toString().toLowerCase());
}
}
一个具体的例子:
public enum WeekDay {
Mon("Monday"), Tue("Tuesday"), Wed("Wednesday"), Thu("Thursday"), Fri("Friday"), Sat("Saturday"), Sun("Sunday");
private final String day;
private WeekDay(String day) {
this.day = day;
}
/**定义枚举类型自己的方法**/
public static void printDay(int i){
switch(i){
case 1: System.out.println(WeekDay.Mon); break;
case 2: System.out.println(WeekDay.Tue);break;
case 3: System.out.println(WeekDay.Wed);break;
case 4: System.out.println(WeekDay.Thu);break;
case 5: System.out.println(WeekDay.Fri);break;
case 6: System.out.println(WeekDay.Sat);break;
case 7: System.out.println(WeekDay.Sun);break;
default:System.out.println("wrong number!");
}
}
public String getDay() {
return day;
}
}
public class Test2 {
public static void main(String[] args) {
for (WeekDay weekday : WeekDay.values()) {
System.out.println(weekday + "====>" + day.getDay());
}
WeekDay.printDay(5);
}
}
Mon====>Monday
Tue====>Tuesday
Wed====>Wednesday
Thu====>Thursday
Fri====>Friday
Sat====>Saturday
Sun====>Sunday
Fri