现在的位置: 首页 > 综合 > 正文

Java基础复习:枚举(java.lang.Enum

2014年08月23日 ⁄ 综合 ⁄ 共 1123字 ⁄ 字号 评论关闭

(1)定义枚举类

public enum Gender {
	/*
	 * Java 5开始出现了枚举
	 * 枚举元素必须位于枚举类中的开始部分
	 * 枚举的每一个元素都相当于一个常量 public static final
	 */
	WOMAN("女"),MAN("男"),NONE("保密");
	
	private String name;
	
	/**
	 * 枚举类必须定义构造方法,默认是私有的,这样才能和枚举元素对应上
	 * @param sex 性别
	 * @param index 序号
	 */
	private Gender(String sex) {
		this.name = sex;
	}
	
	/**
	 * 覆写toString()方法
	 */
	public String toString() {
		return this.name;
	}

	public String getName() {
		return name;
	}
}

定义主函数进行测试

public class EnumDemo {
	public static void main(String[] args) {
		Gender m = Gender.MAN;
		Gender m2 = Gender.WOMAN;
		System.out.println(m);//男
		System.out.println(m2);//女
		
		System.out.println("------------------");
		//所有枚举类都提供一个静态的values()方法(返回该枚举类所有对象组成的数组)
		//便于遍历所有枚举对象;
		Gender[] gs = Gender.values();
		for (Gender gender : gs) {
			System.out.println(gender);
		}
		
		System.out.println("------------------");
		//所有枚举类都提供一个静态的valueOf(String name)方法
		//返回枚举类中对象名等于 name的对象,严格区分大小写
		Gender m3 = Gender.valueOf("NONE");
		System.out.println(m3);//保密
		
		System.out.println("------------------");
		/*
		 * java.lang.Enum类下的常用方法:
		 * String name() 返回此枚举常量的名称,在其枚举声明中对其进行声明
		 * int ordinal() 返回枚举常量的序数(它在枚举声明中的位置,其中初始常量序数为零)
		 * 	当然,也可以在定义枚举时显示的定义枚举的序号
		 */
		System.out.println(m2.name()+"--"+m2.ordinal());//WOMAN--0
		System.out.println(m3.name()+"--"+m3.ordinal());//NONE--2
	}
}
【上篇】
【下篇】

抱歉!评论已关闭.