java枚举的实际应用案例
来源:互联网 发布:大淘客cms申请 编辑:程序博客网 时间:2024/05/16 03:02
java枚举知识点来自jdk5.0的版本带来的新特性,下面讲解的内容分别是:
1.枚举类型
2.枚举中的参数、方法
3.遍历
在实际中对于一些基本固定的值用枚举比较好,当然实际项目中可以用到2中方式,还一种就是做数据字典,这种方式很方便的进行对常量的添加,修改比较灵活,涉及大的项目工程时候选用数据字典比较好;还一种方式就是使用java的枚举了,比较适合小的项目,定义数据集。
1.枚举类型
java枚举是一种类型,怎么理解,例子如下:
public enum ColorEnum { red, green, yellow, blue; }
ColorEnum blue = ColorEnum.blue;
System.out.println(blue.getClass().getName());
System.out.println(blue.name());
打印结果如下:
com.gsafety.cloudframework.codegenerator.facade.entity.data.ColorEnum
blue
由java普通类改写情况如下:
package com.gsafety.cloudframework.codegenerator.facade.entity.data;public class ColorE {/** * 枚举名称 */private final String name = "";public String getName() {return name;}public static final ColorE blue = new ColorE() {public String getName() {return "blue";};};}
所以说枚举是静态实例类的一种对象类型,已经实例化过,可以获取里面的一些数据。
2.枚举参数、方法
枚举中的参数是枚举类型上进行给自定义变量进行赋值的一个数据来源,用构造函数进行数据的封装,方法就是对每个赋值的数据进行获取。还一种方法就是对方法的重载,直接进行赋值,就不需要用到构造函数了。
package com.gsafety.cloudframework.codegenerator.facade.entity.data;public enum Gender {MAN(0,"男"), WOMEN(1,"女");private final int value;private final String name;Gender(int value, String name) {this.value = value;this.name = name;}public int getValue() {return value;}public String getName() {return name;}}
public enum OrderState { /** 已取消 */ CANCEL {public String getName(){return "已取消";}}, /** 待审核 */ WAITCONFIRM {public String getName(){return "待审核";}}, /** 等待付款 */ WAITPAYMENT {public String getName(){return "等待付款";}}, /** 正在配货 */ ADMEASUREPRODUCT {public String getName(){return "正在配货";}}, /** 等待发货 */ WAITDELIVER {public String getName(){return "等待发货";}}, /** 已发货 */ DELIVERED {public String getName(){return "已发货";}}, /** 已收货 */ RECEIVED {public String getName(){return "已收货";}}; public abstract String getName(); }
3.遍历
枚举遍历常用方式:1.switch对单个枚举类型进行判断 2.for整体循环遍历
Gender flag = Gender.MAN;switch (flag) {case MAN:System.out.println(flag.getName() + "----------" + flag.getValue() + "-----------" + flag.ordinal());break;case WOMEN:System.out.println(flag.getName() + "----------" + flag.getValue() + "-----------" + flag.ordinal());break;default:break;}
//遍历枚举for(Gender g : Gender.values()) {System.out.println(g.getName() + "----------" + g.getValue() + "-----------" + g.ordinal());}
*ordinal()是枚举定义的枚举类型的下标数,默认从0开始。vlues()是获取枚举类型数组。
0 0
- java枚举的实际应用案例
- Java中枚举Enum的实际应用
- Java注解的实际应用案例讲解
- 大数据应用的几个实际案例
- RxJava实际应用案例
- Java 数据类型在实际开发中应用二枚举
- 枚举(二)实际应用
- JAVA枚举的应用
- Java枚举的应用
- Java枚举的应用
- 枚举应用案例
- java枚举案例
- java枚举代码案例
- Java静态内部类的实际应用
- java 单例的实际应用
- java命令模式的实际应用
- JAVA中设计模式的实际应用
- Java多线程的两种实际应用
- Java中的static关键字解析
- Unity游戏设计模式(二)观察者模式(Observer Pattern)
- ORACLE备份恢复概述
- JavaScript中的函数
- [转]C#连接操作mysql实例
- java枚举的实际应用案例
- 计划我的交易,交易我的计划
- 赋值-通过Spring配置文件中bean中的property
- ORACLE11G数据备份恢复注意事项
- (4.1.43.3)design support library:Snackbar使用及其注意事项
- Android中图片的三级缓存
- 人生之 生子
- Velocity(8)——引入指令和#Stop指令
- jQuery.extend 函数详解