您的位置:首页 > 编程语言 > Java开发

Java枚举应用实例

2016-01-25 13:46 549 查看
package com.banksteel.mall.itemindex.enums;

/**

* @description: 排序字段枚举

* @projectName:banksteel-mall-item-index-domain

* @className:SortFieldEnum.java

* @see: com.banksteel.mall.itemindex.enums

* @author:wangchong

* @createTime:2016年1月5日 下午2:00:27

* @version 3.0.0

*/

public enum SortFieldEnum

{

/**

* 一级品种代码

*/

FIRST_CATEGORY_CODE("firstCategoryCode"),

/**

* 一级品种名称

*/

FIRST_CATEGORY_NAME("firstCategoryName"),

/**

* 二级品种代码

*/

SECOND_CATEGORY_CODE("secondCategoryCode"),

/**

* 二级品种名称

*/

SECOND_CATEGORY_NAME("secondCategoryName"),

/**

* 三级品种代码

*/

THIRD_CATEGORY_CODE("thirdCategoryCode"),

/**

* 三级品种名称

*/

THIRD_CATEGORY_NAME("thirdCategoryName"),

/**

* 品种代码

*/

CATEGORY_CODE("categoryCode"),

/**

* 品种名称

*/

CATEGORY_NAME("categoryName"),

/**

* 规格代码

*/

* 价格

*/

PRICE("price"),

/**

* 是否过期

*/

IS_OUT_DATE("isOutDate"),

/**

* 匹配分数

*/

SCORE("score");

/**

* 字段名称

*/

private String fieldName;

/**

*

* @description: 根据fieldName获取排序枚举

* @param fieldName

* @return

* @author: wangchong

* @createTime:2016年1月13日 下午4:06:26

*/

public SortFieldEnum getEnum(String fieldName)

{

SortFieldEnum resultEnum = null;

SortFieldEnum[] enumAry = SortFieldEnum.values();

for (int i = 0; i < enumAry.length; i++)

{

if (enumAry[i].getFieldName().equals(fieldName))

{

resultEnum = enumAry[i];

break;

}

}

return resultEnum;

}

/**

*

* @description: 实例化方法

* @param fieldName

* @author: wangchong

* @createTime:2016年1月5日 上午11:17:06

*/

private SortFieldEnum(String fieldName)

{

this.fieldName = fieldName;

}

public String getFieldName()

{

return fieldName;

}

}

订单Map型实现

package com.banksteel.order.enums;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

public enum OrderStatusEnum

{

/**

* 待付款

*/

WAITPAY("待付款",1),



/**

* 待提货

*/

WAITBILL("待提货",2),



/**

* 待二次结算

*/

WAITSETTLEMENT("待二次结算",3),

/**

* 交易失败

*/

TRADEFAIL("交易失败",9),



/**

* 交易成功

*/

TRADESUCCESS("交易成功",10);

/** 描述*/

private String desc;

/** 枚举值*/

private int value;



private OrderStatusEnum(String desc, int value)

{

this.desc = desc;

this.value = value;

}



public int getValue()

{

return value;

}

public void setValue(int value)

{

this.value = value;

}

public String getDesc()

{

return desc;

}

public void setDesc(String desc)

{

this.desc = desc;

}



public static OrderStatusEnum getEnum(int value)

{

OrderStatusEnum resultEnum = null;

OrderStatusEnum[] enumAry = OrderStatusEnum.values();

for (int i = 0; i < enumAry.length; i++)

{

if (enumAry[i].getValue() == value)

{

resultEnum = enumAry[i];

break;

}

}

return resultEnum;

}



public static Map<String, Map<String, Object>> toMap()

{

OrderStatusEnum[] ary = OrderStatusEnum.values();

Map<String, Map<String, Object>> enumMap = new HashMap<String, Map<String, Object>>();

for (int num = 0; num < ary.length; num++)

{

Map<String, Object> map = new HashMap<String, Object>();

String key = String.valueOf(getEnum(ary[num].getValue()));

map.put("desc", ary[num].getDesc());

map.put("value", ary[num].getValue());

enumMap.put(key, map);

}

return enumMap;

}

public static List<Map<String, Object>> toList()

{

OrderStatusEnum[] ary = OrderStatusEnum.values();

List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();

for (int i = 0; i < ary.length; i++)

{

Map<String, Object> map = new HashMap<String, Object>();

map.put("desc", ary[i].getDesc());

map.put("value", ary[i].getValue());

list.add(map);

}

return list;

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: