JAVA enum(枚举) 简单应用

Enum枚举类型出现在j2se1.5。

枚举类型的实例都是常量,按照命名规则都用大写字母,单词之间用下划线分隔。

枚举类型的实例名也叫具名值。

在创建枚举时,编译器会自动加上toString()方法。编译器还会加上ordinal()方法,

用来表示枚举的常量的声明顺序,以及static values(),返回按声明顺序构成的常量数组。

创建枚举时,需先定义enum实例,如果在enum实例之前定义了任何方法或属性,

那么在编译时就会报错.

values()方法是由编译器在enum中加的statis,如果你讲enum实例向上转型为Enum,

那么values()方法就不可访问了

内置枚举:写在一个类内部的枚举

内置枚举的好处是可以在类里面写多个枚举,显得简单点

public class TestEnum{

public enum HelloEnum{
//枚举类型
HELLO1("1","hello1"),HELLO2("2","hello2");

HelloEnum(String key,String value){
this.key=key;
this.value=value;
}
private final String key;

private final String value;

public String getKey() {
return key;
}

public String getValue() {
return value;
}

public static Map<String,String> getHelloList(){
Map<String,String> helloMap=new HashMap<String,String>();
helloMap.put("1","hello1");
helloMap.put("2","hello2");
return helloMap;
}
}

public enum Hello1Enum{
......
}
}
 

freemarker模板里面显示枚举:
一种情况是从枚举中取值:

(1).在struts2的actin中获取枚举的Map

(2).定义一个宏:
  <#function getHello param>
<#list helloMap?keys as key>
<#if ((key)?string==param)>
<#return helloMap[key]/>
</#if>
</#list>
  </#function>
 

(3).取枚举值

${getHello(param?string)}

或者将枚举放到select下拉框中

<@s.select list="list" listKey="key" listValue="value" name="object.name" headerKey="-1" headerValue="-初始值-"/>
 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值