java enum与int类型的转换

在java中我们有时候会用到枚举来表示某个对象的状态,使得状态的描述不像数字一样让人不容易理解。当然出于某些习惯,有些工程师反对使用枚举。

下面我写一个例子,演示怎样将程序中的枚举类型转成int、获取描述

1.先看一下这个枚举类,里面描述了对象的状态还有描述



enum UserStatus {

DELETE("删除"), NORMAL("正常");

private String name;

private UserStatus(String name) {

this.name = name;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public static UserStatus convert(int value) {

return UserStatus.values()[value];

}

}





2.下面来看看具体如何获取枚举枚举描述 枚举转int



public class EnumConvert {

public static void main(String[] args) {

//直接获取枚举的名字

System.out.println(UserStatus.DELETE);

//获取枚举的下标

System.out.println("delete index = " + UserStatus.DELETE.ordinal());

System.out.println("normal index = " + UserStatus.NORMAL.ordinal());

//获取枚举的描述

System.out.println("delete desc = " + UserStatus.DELETE.getName());

System.out.println("normal desc = " + UserStatus.NORMAL.getName());

//根据下标获取枚举

System.out.println("index convert enum"+UserStatus.convert(1));

}

}


推荐阅读更多精彩内容