实际开发中,很多人可能很少用枚举类型。更多的可能使用常量的方式代替。但枚举比起常量来说,含义更清晰,更容易理解,结构上也更加紧密。看其他人的博文都很详细,长篇大论的,这里理论的东西不说了,一起看看在实际开发中比较常见的用法,简单明了。

看看枚举类

 /**
* 操作码类
* @author kokJuis
* @version 1.0
* @date 2017-3-6
*/
public enum Code { SUCCESS(10000, "操作成功"),
FAIL(10001, "操作失败"), private int code;
private String msg; //为了更好的返回代号和说明,必须呀重写构造方法
private Code(int code, String msg) {
this.code = code;
this.msg = msg;
} public int getCode() {
return code;
} public void setCode(int code) {
this.code = code;
} public String getMsg() {
return msg;
} public void setMsg(String msg) {
this.msg = msg;
} // 根据value返回枚举类型,主要在switch中使用
public static Code getByValue(int value) {
for (Code code : values()) {
if (code.getCode() == value) {
return code;
}
}
return null;
} }

使用:

 //获取代码
int code=Code.SUCCESS.getCode();
//获取代码对应的信息
String msg=Code.SUCCESS.getMsg(); //在switch中使用通常需要先获取枚举类型才判断,因为case中是常量或者int、byte、short、char,写其他代码编译是不通过的 int code=Code.SUCCESS.getCode(); switch (Code.getByValue(code)) { case SUCCESS:
//......
break; case FAIL:
//......
break; }

最新文章

  1. Spring MVC初始化参数绑定
  2. C语言中字符串结束符'\0'
  3. iOS中UINavigationController控制器使用详解
  4. EF – 6.一对一关联
  5. asp.net 之 购物车
  6. ResponseUtil反射制造唯一结果
  7. 【JS Note】字符串截取
  8. 源码分析shiro认证授权流程
  9. Vimwiki使用笔记
  10. Apache MINA 框架之默认session管理类实现
  11. ios GCD的使用及封装
  12. c++ 定义宏常量
  13. 聊一聊C# 8.0中的await foreach
  14. 使用 pm2 守护你的 .NET Core 应用程序
  15. Tensor基本操作
  16. [Java]LeetCode141. 环形链表 | Linked List Cycle
  17. javac与java版本不一致
  18. 机器学习 之KNN近邻法
  19. 开源通用爬虫框架YayCrawler-页面的抽取规则定义
  20. Nginx CONTENT阶段 static模块

热门文章

  1. 一、基础篇--1.2Java集合-HashMap源码解析
  2. java实现几种常用排序:选择排序
  3. 多线程分配线程的实现方案:CountDownLatch类
  4. 淘宝TAE平台定时任务包的部署步骤
  5. 详解nohup和& 区别
  6. Java Web开发中路径问题小结(getRequestUrl getContextUrl getServletUrl)
  7. fiddler抓取https的请求详解
  8. Python——作业12(选做)选中矩阵的每行或每列画出对应的折线图(python programming)
  9. tomcat启动不了?
  10. UOJ#548.数学