啥也不说了,直接贴代码~记录一下,方便以后使用。

请执行TestEnum类查看效果~

1.Enum 类Color

/*** */
package hpf.test;import java.util.EnumMap;
import java.util.EnumSet;/*** Enum 类Color* @author pengfei.hpf* */public enum Color implements ColorInterface {/*** 枚举类型定义,和构造函数相对应*/RED("红色", 1),GREEN("绿色", 2),BLANK("白色", 3),YELLOW("黄色", 4);private String name;private int index;/**构造函数* @param name* @param index*/private Color(String name, int index) {this.name = name;this.index = index;}/* (non-Javadoc)* @see hpf.test.ColorInterface#getName()*/@Overridepublic String getName() {return this.name;}/* (non-Javadoc)* @see hpf.test.ColorInterface#print()*/@Overridepublic String print() {String msg = "index:"+index+" name:"+name;System.out.println(msg);return msg;}public static final EnumSet<Color> enumSet =  EnumSet.allOf(Color.class);public static final EnumMap<Color,String> enumMap=  new EnumMap<Color,String>(Color.class);}

2.接口类

/*** */
package hpf.test;/*** 接口类* @author pengfei.hpf**/
public interface ColorInterface {/**得到名称枚举类型Color的名称* @return*/public String getName();/**打印枚举类型的信息* @return*/public String print();
}

3.测试类

package hpf.test;import java.util.Iterator;/**Enum 类的使用示例* @author pengfei.hpf**/
public class TestEnum {public static final int RED = 1 ;public static final int GREEN = 2;/*** @param args*/public static void main(String[] args) {enumFunc();enumSetFunc();enumMapFunc();}/*** 基本方法测试*/public static void enumFunc(){System.out.println("enumFunc:"+Color.RED.getName());       Color.YELLOW.print();}/*** EnumSet里的所有Enum对象都是唯一的*/public static void enumSetFunc(){Iterator<Color> it = Color.enumSet.iterator();while (it.hasNext()) {Color c = (Color) it.next();c.print();}System.out.println("enumSet:"+Color.enumSet.toString());}/*** enumMap的测试方法,key必须为Enum 类型数据,value可以为任意类型*/public static void enumMapFunc() {Color.enumMap.put(Color.RED, "This is RED");Color.enumMap.put(Color.GREEN, "I am RED");Color.enumMap.put(Color.YELLOW, "Oh,you are too yellow");for(Color color : Color.enumMap.keySet()){System.out.println("enumMap:"+Color.enumMap.get(color));}}
}

参考链接

1.enumset的使用 https://weblogs.java.net/blog/mkarg/archive/2010/01/03/fun-enumset

2.enummap的使用 http://javarevisited.blogspot.com/2012/09/what-is-enummap-in-java-example-tutorial.html

3.enummap的使用 http://www.concretepage.com/java/example-enummap-java

4.enum的使用 http://helloyesyes.iteye.com/blog/1186575

代码以图片格式上传,下载图片后,把后缀换成RAR即可.

Emun 枚举类型使用浅析——包括enumSet enumMap相关推荐

  1. c语言枚举类型编程,浅析C语言枚举类型

    在学习C语言的结构体过程中,我们接触到比较重要的内容要数枚举类型这一环了.那么到底什么是C语言中的枚举类型呢?它在我们编写程序时又起着什么样的作用呢?下面课课家小编就为大家简单介绍C语言中的枚举类型和 ...

  2. enum枚举类型用法浅析

    定义: 枚举类型定义用关键字enum标识,形式为: enum 标识符 { 枚举数据表 }: (1)enum是关键字,标识枚举类型.定义枚举类型必须用enum开头. (2)枚举数据表中的名字是程序员自己 ...

  3. Java枚举类型介绍

    简介 Java的枚举类型用于在某些东西可以枚举出来的时候,我们可以把它定义为枚举类型,然后把其中包含的可选值一一枚举.打个比方,我们现在有一堆数字,大致可以分为四种类型,整型.浮点型.金额和百分比.整 ...

  4. 【Java】枚举类型

    一. 枚举是什么 隐约记得自己大一的时候在 C 语言的课程中学习过枚举 , 但是已经忘光光了 . 那么本文就在 Java 中再学一遍吧 . 枚举是一组常量集合,这些常量具有特定的标识符 . 在 Jav ...

  5. java enum枚举类型的使用

    public enum InventoryMode implements ChineseNameEnum { /**      * 按仓库盘点      */     BY_WAREHOUSE(&qu ...

  6. java 枚举类型_java 枚举类型(翻译自Java Tutorials)

    枚举类型,它是字段包含固定数量的常量的类型.常见的例子,罗盘的方向包括东西南北,还有星期的天. 因为他们是常量,所有枚举类型的字段的名字一般是大写字母. java编程语言,声明一个枚举类型使用enum ...

  7. 男 女 java 枚举_献给我老公 - Java枚举类型

    枚举类型是一种特殊的数据类型.具有枚举类型的变量,其取值范围会被限定在预定义的常量池中.该变量的值必须为预定义取值的其中之一.常见的例子有指南针的方向(东,西,南,北)和星期几. 由于是常量,枚举类型 ...

  8. 浅析枚举类型(Enumerated types)

    枚举类型定义了一系列有序值的集合.枚举变量就是从这个既定的集合中取某个值.集合中的有序值可以称为元素,元素一般从0开始索引(也就是元素的顺序号). 定义一个枚举类型,采用以下的格式: type typ ...

  9. java枚举对象作用_浅析Java编程中枚举类型的定义与使用

    定义枚举类型时本质上就是在定义一个类,只不过很多细节由编译器帮您补齐了,所以某些程度上,enum关键字的 作用就像是class或interface. 当您使用"enum"定义枚举类 ...

最新文章

  1. QEMU-KVM中的多线程压缩迁移技术
  2. java抽象类实现接口可以不用实现方法
  3. python循环结束执行后面代码_计算机程序中某种代码的反复执行,称为________。Python中的循环有重复一定次数的________,也有重复到某种情况结束的________。...
  4. 5 随窗口改变大小_C4D默认界面两个关于坐标轴的窗口有什么区别
  5. 初步认识java中的方法
  6. android 360相机,相机360app安卓版
  7. 8. 工厂设计模式(factory pattern)
  8. 二、建模及画网格软件推荐
  9. MFC CImage透明图片显示
  10. 中科院分区基础版和升级版究竟有何区别?
  11. 学习笔记:C语言简介
  12. 学员洒泪分享,中富金石投顾骗局?血本无归?
  13. 洛谷 P1328 [NOIP2014 提高组] 生活大爆炸版石头剪刀布
  14. linux输入ll命令各个字段的含义
  15. 发票扫描仪的正确打开方式
  16. 电力电子技术第二章总结
  17. [转载]大型Web2.0站点构建技术初探
  18. 22届计算机考研复试技巧以及注意事项高频问答35问Python集锦【一定要记牢】
  19. 微型计算机原理第三版考试,微机原理考试试题及答案分析
  20. 5.4 数值分析: 牛顿插值多项式及余项

热门文章

  1. Ios热更新,实时代码更新,动态更新,动态库framework
  2. Java获取IPv4/IPv6地理位置-IP地址库
  3. c语言求婚代码大全,程序员表白教程,这些代码用过的都成功了!
  4. 解决Openwrt安装插件提示一下错误的办法
  5. 各种抗锯齿模式略解:SSAA MSAA CSAA CFAA
  6. 基于STM32分析内存分布图
  7. python基础——matplotlib——scatter和plot方法中的maker参数(点的样式)
  8. 得到-薛兆丰的北大经济学课-0-目录
  9. Java通过javacsv实现读取csv文件数据
  10. (转载)JAVA小知识