java · 2018-04-18 0

Java Enum和String及int的相互转化

一、定义性别枚举

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

/**
 * 性别枚举
 */
public enum Gender {
    male("男"),female("女");

    private String name;

    private Gender(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }
}

二、枚举的基本方法

对于male枚举常量:

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枚举常量的序数
    }
}

结果:

三、Enum与String的转化

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

四、Enum与int的转化

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