enum

Enum和String及int的相互转化

参考文档: https://blog.csdn.net/Luck_ZZ/article/details/79996810

定义性别枚举

枚举(enum),是指一个经过排序的、被打包成一个单一实体的项列表。使用枚举增加程序可读性、降低耦合性。

/**
 * 性别枚举
 */
public enum Gender {
    male("男"),female("女");
 
    private String name;
 
    private Gender(String name) {
        this.name = name;
    }
 
    public String getName() {
        return name;
    }
}

枚举的基本方法

public class MyMain {
    public static void main(String[] args) {
        Gender gender = Gender.male;
        System.out.println(gender.toString()); //Gender.male枚举常量的名称
        System.out.println(gender.getName());//Gender.male的name值
        System.out.println(gender.ordinal());//Gender.male枚举常量的序数
    }
}

输出:

male
0

Enum与String的转化

String maleString = Gender.male.toString();  //Gender转化为String
Gender maleGender = Gender.valueOf("male"); //String转化为Gender,male对应Gender枚举的常量名称

Enum与int的转化

int maleInt = Gender.male.ordinal();        //Enum转化为int,返回枚举常量的序数
Gender maleGender2 = Gender.values()[0];     //int转化为Enum,返回第0个枚举常量