java enum 用法_Java Enum 枚举型 简单用法

JDK1.5之后Java添加了Enum枚举型,一般情况下可以用来保证一组定义好的数据常量,比如日期,时间,颜色,状态等情况,同时也可以利用Enum来实现单例。

这里简单的实现一些Enum的操作方法和实现。

首先自己定义了一个Enum

public enum MyEnum {

One("A", 1), Two("B", 2), Three("C", 3);

private String key;

int value;

private MyEnum(String key, int value) {

this.key = key;

this.value = value;

}

/**

* 根据Key的值获取到第一个匹配的Enum

*/

public static MyEnum getByKey(String key) {

for (MyEnum e : values()) {

if (e.key.equals(key))

return e;

}

return null;

}

public String getKey() {

return key;

}

public void setKey(String key) {

this.key = key;

}

public int getValue() {

return value;

}

public void setValue(int value) {

this.value = value;

}

}

现在我们来测试一下Enum的一些使用方法

Enum e = MyEnum.One;

System.out.println("Enum: " + e);

//获取该Enum定义的Name值

System.out.println("MyEnum.One.name: " + MyEnum.One.name());

//定义的Enum,Key设置为了private,通过public的getKey方法获取key的值

System.out.println("MyEnum.One.getKey: " + MyEnum.One.getKey());

//定义的Enum,value设置为了public,直接通过value方式获取value值

System.out.println("MyEnum.One.value: " + MyEnum.One.value);

//获取指定的Enum在序列中排第n个,排序从0开始

System.out.println("MyEnum.One.ordinal: " + MyEnum.One.ordinal());

/*

* 在enum中定义一个public static 的方法,

* 可以根据Key的值获取到第一个匹配的Enum

*/

System.out.println("MyEnum.getByKey: " + MyEnum.getByKey("A"));

//Enum自带方法,根据Name值获取指定的Enum

System.out.println("MyEnum.valueOf: " + MyEnum.valueOf("One"));

//Enum自带方法,根据Name值获取指定定义的Enum

System.out.println("MyEnum.valueOf: " + Enum.valueOf(MyEnum.class, "One"));

运行之后查看一下Console控制台

Enum: One

MyEnum.One.name: One

MyEnum.One.getKey: A

MyEnum.One.value: 1

MyEnum.One.ordinal: 0

MyEnum.getByKey: One

MyEnum.valueOf: One

MyEnum.valueOf: One

/_//_//_//_//_//_//_//_//_//_//_//_//_//_//_//_//_//_//_//_//_//_//_/

JSP中使用Enum遍历

package com.againfly.enumpack;

public enum TypeEnum {

DVR("DVR"), NVR("NVR");

private String value;;

private HostTypeEnum(String value) {

this.value = value;

}

public String getValue() {

return value;

}

}

${type.value}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值