欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java Enum和String及int的相互转化示例

程序员文章站 2022-06-12 11:58:52
一、定义性别枚举枚举(enum),是指一个经过排序的、被打包成一个单一实体的项列表。使用枚举增加程序可读性、降低耦合性。/** * 性别枚举 */public enum gender { male(...

一、定义性别枚举

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

结果:

Java Enum和String及int的相互转化示例

三、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,返回枚举常量的序数

java enum指定值的应用(从数据转换为enum)

enum action{
 ac_entry(10),ac_view(2),ac_approve(5);
 private int _val;
 private static final map<integer,action> keymap=new hashmap<integer,action>();
 static{
  for (action item:action.values()){
  keymap.put(item._val,item);
  }
 }
 public int getval(){
  return _val;
 }
 action(int val){
  _val=val;
 }
 public static action fromval(int pvnval){
  return keymap.get(pvnval);
 }
 }
@test
 public void testenum(){
 action e=action.ac_view;
 system.out.println(e+","+e.ordinal()+","+e.getval());
 e=action.fromval(5);
 system.out.println(e+","+e.ordinal()+","+e.getval());
 }

原理,就是用一个map来进行value->enum的转换.

ac_view,1,2
ac_approve,2,5

到此这篇关于java enum和string及int的相互转化示例的文章就介绍到这了,更多相关java enum和string及int相互转化内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!