Java学习--枚举相关知识

一、枚举概述
枚举类是一种特殊的类,它的对象个数是有限个。
适用场景: 当对象的个数已经固定,并有限时,例如:性别,星期等等
二、枚举中的方法
a.ordinal();获取枚举对象的序号
b.name();把枚举对象转为字符串
c.valueOf;把字符串转为枚举对象
d.values();以数组形式返回所有的枚举对象。

public enum 枚举类名{
	MALE;
    FEMALE;
}
public class TestEnum {
    public static void main(String[] args) {
        // 获取枚举对象的序号,序号从0开始
        System.out.println(Sex.MALE.ordinal());//0
        System.out.println(Sex.FEMALE.ordinal());//1
        // 把枚举对象转为字符串
        System.out.println(Sex.MALE.name());     //MALE
        // 把字符串转为枚举对象, 虚拟机中的枚举对象只会有一份, 可以用== 来比较
        System.out.println(Sex.valueOf("MALE") == Sex.MALE);//true
        // 打印所有的枚举对象
        for (Sex value : Sex.values()) {
            System.out.println(value);//MALE /   FEMALE
        }
    }
}

三、
a.枚举类中的构造方法不能是公有的
b.枚举类也不能被继承。
c.定义的对象的参数类型和个数必须与构造方法保持一致。

public enum Sex {
    MALE("男"),
    FEMALE("女");

    private String cName;
    public String cnName() {
        return this.cName;
    }
    // 构造方法不能是公共的
    Sex(String cnName) {
        this.cName = cnName;
    }
}
public class TestEnum {
    public static void main(String[] args) {
        System.out.println(Sex.MALE.cnName());//男
        System.out.println(Sex.FEMALE.cnName());//女
    }
}

猜你喜欢

转载自blog.csdn.net/lyf_0922/article/details/84617528