java枚举运用,易于扩展和使用
2016-11-22 00:00
260 查看
摘要: 一个简单运用枚举的类: 根据传入值区分,该类型是否存在;
没有什么情况下,必须使用枚举,枚举类型只是起到用于声明一组命名的常数;
那么我们什么时候推荐使用枚举呢;
可减少由数字转置或键入错误引起的错误。
以后更改值很容易。
使代码更易读,这意味着代码中发生错误的概率降低。
确保向前兼容性。使用枚举可减少将来有人更改与成员名称对应的值时代码出错的概率。
枚举类: 应用图片路径类型
应用块: 使用的地方
执行结果:
没有什么情况下,必须使用枚举,枚举类型只是起到用于声明一组命名的常数;
那么我们什么时候推荐使用枚举呢;
可减少由数字转置或键入错误引起的错误。
以后更改值很容易。
使代码更易读,这意味着代码中发生错误的概率降低。
确保向前兼容性。使用枚举可减少将来有人更改与成员名称对应的值时代码出错的概率。
枚举类: 应用图片路径类型
/** <p class="detail"> * 功能:应用图片路径类型 * </p> * @ClassName: PicAppType * @version V1.0 * @date 2016年4月23日 * @author damowang */ public enum PicAppType { USER_HEAD("\\USER\\HEAD\\", "用户头像"), ARTICLE_ICON("\\ARTICLE\\TEXT\\", "资讯图片"); private String code; private String detail; PicAppType(String code, String detail) { this.code = code; this.detail = detail; } /** * <p class="detail"> * 功能:快捷迭代验证是否code存在 * </p> * @author damowang * @param type * @return * @throws */ public static PicAppType contains(String type){ for(PicAppType typeEnum : PicAppType.values()){ if(typeEnum.name().equals(type)){ return typeEnum; } } return null; } /** * @return code */ public String getCode() { return code; } /** * @param code */ public void setCode(String code) { this.code = code; } /** * @return detail */ public String getDetail() { return detail; } /** * @param detail */ public void setDetail(String detail) { this.detail = detail; } }
应用块: 使用的地方
String picTypeName = reqeust.getParameter("uploadType"); if(StringUtils.isBlank(picTypeName)){ temp.setStatus(0); temp.setShowMessage("请传入图片类型!"); renderJson(temp); return; } PicAppType picType =PicAppType.contains(picTypeName); if (null == picType) { temp.setStatus(0); temp.setShowMessage("传入图片类型有误!"); renderJson(temp); return; }
public class EnumTest { public static void main(String[] args) { PicAppType tempEnum =PicAppType.contains("USER_HEAD"); System.out.println(tempEnum.getCode()); System.out.println(tempEnum.getDetail()); tempEnum =PicAppType.contains("USER_HEAD1"); if(tempEnum==null){ System.out.println("不存在"); return; } System.out.println("我执行了..."); } }
执行结果:
\USER\HEAD\ 用户头像 不存在
相关文章推荐
- java 枚举——java中枚举的运用和使用场景
- java 枚举——java(android)中枚举的运用和使用场景
- java 枚举——java(android)中枚举的运用和使用场景
- java 枚举——java中枚举的运用和使用场景
- java 枚举——java(android)中枚举的运用和使用场景
- java 枚举——java中枚举的运用和使用场景
- 如何把枚举元素的描述输出(不使用反映和扩展方法(3.5才支持呢)
- 面向 Java 开发人员的 Ajax: 使用 Jetty 和 Direct Web Remoting 编写可扩展的 Comet 应用程序
- 面向 Java 开发人员的 Ajax: 使用 Jetty 和 Direct Web Remoting 编写可扩展的 Comet 应用程序
- 再谈在Java中使用枚举
- 使用native方法扩展Java程序的功能详解
- 第四篇 快速、轻量、可扩展、易于使用的EmEditor
- java的枚举enum的简单使用
- 面向 Java 开发人员的 Ajax: 使用 Jetty 和 Direct Web Remoting 编写可扩展的 Comet 应用程序
- Rational Functional Tester Proxy SDK 开发,第 3 部分: 使用 Proxy SDK 扩展 Java GUI 组件可捕获的验证数据
- 高阶Java枚举类型enum使用详解
- 高阶Java枚举类型enum使用详解
- 高级 XML 验证-使用 XSLT 和 Java 扩展验证 XML 文档中的复杂约束
- 使用 XSLT 和 Java 扩展验证 XML 文档中的复杂约束
- 使用 Java 构造高可扩展应用