java技术系列(一) Enum
Enum的本质是类,继承自Enum类。
enum直接使用==进行比较就可以。
类型的静态values方法,返回左右的枚举实例。
ordinal方法返回enum声明中枚举常亮的位置。
enum可以继承接口。api可以面向枚举的接口进行编程,这样这个接口可以接受任何接收实现该接口的枚举。
适用场景:在实际编程中,存在稳定的有限数据集,如周一到周日,四季名称,男女性别等。适用于枚举。
可以在switch中使用。
1 package testjava; 2 3 import com.alibaba.fastjson.JSON; 4 5 /** 6 * Create with test01 7 * Auther: hp.wang on 2017/9/19 8 * DateTime: 2017/9/19 20:16 9 */ 10 public class testEnum { 11 12 //常用定义Enum方法 13 public enum Role { 14 ADMIN(1), GUIDER(2), ROBOT(3),USER(4); //顺序很重要 15 16 private int value; 17 18 Role(int v) { 19 this.value = v; 20 } 21 22 public int getValue() { 23 return value; 24 } 25 26 public static Role getByValue(int v) { 27 for (Role r : Role.values()) { 28 if (r.getValue() == v) { 29 return r; 30 } 31 } 32 throw new IllegalArgumentException(v + " is not found in this enum."); 33 } 34 } 35 36 public static void main(String[] args) { 37 //使用方法: 38 Role role = Role.ADMIN; 39 System.out.println(role.toString() + ":" + role.getValue()); 40 System.out.println(Role.getByValue(2).toString()); 41 System.out.println("json:"+ JSON.toJSONString(role)); 42 43 Role role1=JSON.parseObject("\"ADMIN\"",Role.class); 44 Role role2=JSON.parseObject("\"USER\"",Role.class); 45 46 System.out.println("end"); 47 } 48 }
转载于:https://www.cnblogs.com/netact/p/7554042.html
java技术系列(一) Enum相关推荐
- 【Java技术系列】爱情36技之猿门授渔
上面蓝色"一猿小讲"点击加关注 觉得好看,记得再设置"星标"哦 [这是一猿小讲的第 29 篇原创分享] 1. 授人以鱼,不如授人以渔.就用上面两张图片展开今天的 ...
- 【Java技术系列】爱情36技之记忆永存
[这是一猿小讲的第 32 篇原创分享] 1. 关注"一猿小讲"公众号的伙伴们都清楚,Java 那小子带着心爱的 Python 菇凉,去了一趟浪漫的土耳其,然后一起又去了东京和巴黎 ...
- Java技术系列文章汇集(长期更新)
为什么80%的码农都做不了架构师?>>> JVM Java之JDK.JRE.JVM Java之JVM的内部结构及运行机制 Java之JVM内存结构.Java内存模型.Java对 ...
- 【Java技术系列】爱情36技之趣味相投
[这是一猿小讲的第 27 篇原创分享] 1. 鲁迅先生曾经说:两个人志同道合,爱情才能走得长久. 我们老百姓常说:磨刀不误砍柴工:工欲善其事必先利其器. 准备好小板凳,今天的故事就从这两句不搭边的话开 ...
- 【Java技术系列】爱情36技之暗送秋波的技术
[这是一猿小讲的第 26 篇原创分享] 1. 这篇文章想分享已经很久了,苦于皱巴巴的技术比较生涩难懂,迟迟没有找到好的分享方式,今天结合爱情中暗送秋波的故事的形式,尝试分享一下. 以后如果再有人问你们 ...
- 【Java技术系列】爱情36技之Bug大战
[这是一猿小讲的第 28 篇原创分享] 1. 鲁迅先生说:程序员,天不怕地不怕,就怕小虫儿爬呀爬,爬呀爬. 随着时间的推移,鲁迅先生又说:真正勇猛的程序员,敢于让虫子面对惨淡的虫生. 虫子在程序员心中 ...
- 【Java技术系列】爱情36技之追美妹的技术
[这是一猿小讲的第 25 篇原创分享] 1. 在古老的非洲大陆上,有个原始人无意中抬头仰望星空,凝视的时间稍微长了一些,超过了外星人设置的阈值,立刻拉响了人类即将产生文明的警报.因为外星人认为,人类已 ...
- 顽石系列:Java技术面试
顽石系列:Java技术面试 JDBC相关 1.Statement与PreparedStatement的区 别,什什么是SQL注⼊入,如何防⽌止SQL注⼊? PreparedStatement支持动态设 ...
- Tomcat系列之Java技术详解
一.概述 1.前言 在前面几篇博客中,我们和大家说了负载均衡器服务器.Web服务器.反向代理服务器.缓存服务器,从这篇博客开始我们和大家说说应用程序服务器,对于上述内容不了解的博友可以去参考一下我们前 ...
最新文章
- 07、C语言——函数
- exp()用法和点乘的原因
- 线性表----单链表
- Swift - 多线程GCD详解
- 莫队(不带修改)模板
- ubuntu 系统中如何截图
- 如何在 ASP.Net Core 中实现 健康检查
- internetreadfile读取数据长度为0_YOLOV3的TensorFlow2.0实现,支持在自己的数据集上训练...
- Failed connect to github.com:443; No error
- 什么行业适合年轻人自主创业
- 平衡二叉树---AVL树的实现
- MacDroid for mac(安卓手机数据传输助手)
- 遇到个别手机前置摄像头相差90度的怪事
- ArcGIS实验教程:ArcGIS 10.2手把手图文安装教程(经典版)
- Clojure学习笔记(一)——介绍、安装和语法
- 安卓沉浸式状态栏_要简单还要沉浸 Dacom L10 主动降噪(ANC)蓝牙耳机体验
- 虚地址到实地址的翻译过程
- matlab示波器绘图工具,快速绘制Simulink示波器波形
- 【第三章】 C语言之牛客网刷题笔记 【点进来保证让知识充实你一整天】
- Teams认证话机系列(2)--AudioCodes C450HD
热门文章
- 小程序服务器七牛云,基于七牛云 API 开发的微信小程序 SDK
- 分区助手扩大c盘后自动修复_C盘空间不够,如何扩大?
- 记录flink和spark提交任务常用句
- IE8提示JS错误(KB927917)终极解决方法
- CF1202 - E. You Are Given Some Strings...(AC自动机)
- C. Commentator problem
- B+/-Tree原理及mysql的索引分析
- 堆排序的时间复杂度分析
- TCP、UDP数据包大小的限制
- 【Linux】vim简单配置