每天进步一点:java enum使用
2016-07-07 00:00
585 查看
摘要: 每天进步一点:java enum使用
网上找的例子,研究了下,备注下
输出结果:
网上找的例子,研究了下,备注下
package com.test.utils; import java.util.EnumMap; import java.util.EnumSet; public class LightTest { // 1. 定义枚举类型 public enum Light { // 利用构造函数传参 RED (1), GREEN (3), YELLOW (2); // 定义私有变量 private int nCode ; // 构造函数,枚举类型只能为私有 private Light( int _nCode) { this . nCode = _nCode; } @Override public String toString() { return String.valueOf ( this . nCode ); } } /** * @param args */ public static void main(String[] args ) { // 1. 遍历枚举类型 System. out .println( " 演示枚举类型的遍历 ......" ); testTraversalEnum (); // 2. 演示 EnumMap 对象的使用 System. out .println( " 演示 EnmuMap 对象的使用和遍历 ....." ); testEnumMap (); // 3. 演示 EnmuSet 的使用 System. out .println( " 演示 EnmuSet 对象的使用和遍历 ....." ); testEnumSet (); } /** * 演示枚举类型的遍历 */ private static void testTraversalEnum() { Light[] allLight = Light.values (); Light light=Light.valueOf("RED"); System.err.println(light+"**************"); for (Light aLight : allLight) { System. out .println( " 当前灯 name : " + aLight.name()); System. out .println( " 当前灯 ordinal : " + aLight.ordinal()); System. out .println( " 当前灯: " + aLight); } } /** * 演示 EnumMap 的使用, EnumMap 跟 HashMap 的使用差不多,只不过 key 要是枚举类型 */ private static void testEnumMap() { // 1. 演示定义 EnumMap 对象, EnumMap 对象的构造函数需要参数传入 , 默认是 key 的类的类型 EnumMap<Light, String> currEnumMap = new EnumMap<Light, String>( Light. class ); currEnumMap.put(Light. RED , " 红灯 " ); currEnumMap.put(Light. GREEN , " 绿灯 " ); currEnumMap.put(Light. YELLOW , " 黄灯 " ); // 2. 遍历对象 for (Light aLight : Light.values ()) { System. out .println( "[key=" + aLight.name() + ",value=" + currEnumMap.get(aLight) + "]" ); } } /** * 演示 EnumSet 如何使用, EnumSet 是一个抽象类,获取一个类型的枚举类型内容 <BR/> * 可以使用 allOf 方法 */ private static void testEnumSet() { EnumSet<Light> currEnumSet = EnumSet.allOf (Light. class ); for (Light aLightSetElement : currEnumSet) { System. out .println( " 当前 EnumSet 中数据为: " + aLightSetElement); } } }
输出结果:
演示枚举类型的遍历 ...... 1************** 当前灯 name : RED 当前灯 ordinal : 0 当前灯: 1 当前灯 name : GREEN 当前灯 ordinal : 1 当前灯: 3 当前灯 name : YELLOW 当前灯 ordinal : 2 当前灯: 2 演示 EnmuMap 对象的使用和遍历 ..... [key=RED,value= 红灯 ] [key=GREEN,value= 绿灯 ] [key=YELLOW,value= 黄灯 ] 演示 EnmuSet 对象的使用和遍历 ..... 当前 EnumSet 中数据为: 1 当前 EnumSet 中数据为: 3 当前 EnumSet 中数据为: 2
相关文章推荐
- Java 并发 学习笔记
- elasticsearch开发文档(五)——Elasticsearch数据交互之JAVA篇
- 深入理解Java的接口和抽象类
- PO、VO、BO、DTO、POJO、DAO之间的关系
- Spring国际化实现配置
- java 基本功 —— 内存相关
- spring quartz 定时任务 demo
- 保护块(Guarded Blocks)
- SSL介绍与Java实例
- Java泛型解析
- Spring——AOP的相关通知及应用
- Spring注解
- protobuf vs java
- 学习笔记-Java中的xml文件读取之DOM4J解析
- Java插入音频文件,导出jar包可播放
- JavaEE学习笔记之SSH—Hibernate(5)
- java中素数的简单判断方法
- java二分法查找数组元素
- Java ClassLoader 原理详细分析(转)
- java的string.split()分割特殊字符时注意点