Java enum枚举
文章目录
- 1. 枚举例子
- 2. 接口的实现
- 3. 枚举中定义抽象方法
enum 定义了枚举类型,其继承于 Enum 枚举类
1. 枚举例子
import java.util.EnumMap;
import java.util.EnumSet;
import java.util.Iterator;
import java.util.Map;class EnumDemo {public enum Color{RED, GREEN, BLUE}public static void main(String[] args){Color c = Color.RED;System.out.println(c);c = Color.GREEN;System.out.println(c);c = Color.BLUE;System.out.println(c);// 可用于 switch switch(c){case RED:{System.out.println("红色");break;}case GREEN:{System.out.println("绿色");break;}case BLUE:{System.out.println("蓝色");break;}default:{System.out.println("nothing");}}// for(Color col : Color.values())System.out.println(col.name() + "--->" + col.ordinal());// RED--->0// GREEN--->1// BLUE--->2// EnumMapEnumMap<Color, String> eMap = new EnumMap<Color, String>(Color.class);eMap.put(Color.RED, "红色");eMap.put(Color.GREEN, "绿色");eMap.put(Color.BLUE, "蓝色");for(Map.Entry<Color, String> me : eMap.entrySet()){System.out.println(me.getKey() + " : " + me.getValue());}// RED : 红色// GREEN : 绿色// BLUE : 蓝色// EnumSetEnumSet<Color> eSet = EnumSet.allOf(Color.class);//全部内容设置到集合Iterator<Color> iter = eSet.iterator();while(iter.hasNext()){System.out.println(iter.next());}// RED// GREEN// BLUE}
}
enum Color{RED("红色"), GREEN("绿色"), BLUE("蓝色");private String name;public String getName(){return name;}public void setName(String name){this.name = name;}Color (String name){ // 枚举的构造不能为 publicthis.setName(name);}
}
class test7{public static void main(String[] args) {for(Color col : Color.values()) {System.out.println(col.name() + "--->" + col.ordinal() + " " + col.getName());}}
}
输出:
RED--->0 红色
GREEN--->1 绿色
BLUE--->2 蓝色
2. 接口的实现
- 每个元素都要实现
interface Info{public String getColor();
}
enum Color implements Info{RED{public String getColor(){return "红色";}},GREEN{public String getColor(){return "绿色";}},BLUE{public String getColor(){return "蓝色";}};
}
class test7{public static void main(String[] args) {for(Color col : Color.values()) {System.out.println(col.name() + "--->" + col.ordinal() + " " + col.getColor());}}
}
输出:
RED--->0 红色
GREEN--->1 绿色
BLUE--->2 蓝色
3. 枚举中定义抽象方法
- 每个元素都要实现抽象方法
enum Color {RED{public String getColor(){return "红色";}},GREEN{public String getColor(){return "绿色";}},BLUE{public String getColor(){return "蓝色";}};public abstract String getColor();
}
class test7{public static void main(String[] args) {for(Color col : Color.values()) {System.out.println(col.name() + "--->" + col.ordinal() + " " + col.getColor());}}
}
Java enum枚举相关推荐
- android enum java包_Android @IntDef注解取代Java enum枚举提高性能详解
Android @IntDef注解取代Java enum枚举提高性能 为提高Android性能,Android官方建议使用@IntDef注解替代Java的enum枚举.@IntDef的使用给出一个例子 ...
- Java Enum 枚举
Java Enum(枚举)是一个Java类 enum TestEnum{ a("Foo1"),b("Foo2"),c("Foo3") ...
- java enum优点_你需要关注的 Java Enum 枚举的几个细节
枚举是一个非常古老的语言特性,用来实现具名的有限集合,在 C/C++ 中使用广泛.而 Java 在 Java SE5 才引入枚举.也许语言设计者觉得既然是后引入该特性,那么一定要在这个特性上支持比其他 ...
- Java中的enum详细解析------Java enum 枚举还可以这么用
在大部分编程语言中,枚举类型都会是一种常用而又必不可少的数据类型,Java中当然也不会例外.然而,Java中的Enum枚举类型却有着许多你意想不到的用法,下面让我们一起来看看. 1.可以在enum中添 ...
- java enum枚举类的用法以及高级玩法
enum(枚举)类介绍 java枚举类是一组预定义常量的集合,使用enum关键字声明这个类,常量名称官方建议大写 1.enum类基本用法 举一个常见的例子,例如星期就可以描述为一个枚举类,如下 pub ...
- java enum(枚举)的使用
在实际编程中,往往存在着这样的"数据集",它们的数值在程序中是稳定的,而且"数据集"中的元素是有限的. 例如星期一到星期日七个数据元素组成了一周的"数 ...
- java enum枚举的使用详情(实例与原理分析)
一.原始的接口定义常量 public interface IConstants {String MON = "Mon";String TUE = "Tue";S ...
- java enum(枚举)使用详解 + 总结
转:http://www.cnblogs.com/hyl8218/p/5088287.html#undefined enum 的全称为 enumeration, 是 JDK 1.5 中引入的新特性, ...
- Java enum(枚举)的用法详解(转)
用法一:常量 在JDK1.5 之前,我们定义常量都是: public static fianl.... .现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法. p ...
最新文章
- 推荐几个BAT大佬的公众号
- c# 带返回值的action_C#知识点讲解之C#delegate、event、Action、EventHandler的使用和区别...
- sdwan架构怎么搭建?
- JVM - 结合代码示例彻底搞懂Java内存区域_对象在堆-栈-方法区(元空间)之间的关系
- 我的代码和注释都写的像坨屎,那又怎么样?
- 神策 FM | 科学创造「高价值」人生,终止“瞎忙”式勤奋
- JS函数运行在它们被定义的作用域内,而不是它们被执行的作用域内
- js处理16进制hex转str出现的中文乱码问题
- 手把手带你玩转Tensorflow 物体检测 API (3)——训练模型
- 从背包问题优化详解动态规划思想
- ubuntu下c 调用java_ubuntu下使用JNI Java调用C++的例子
- 【图像增强】基于matlab暗通道先验图像去雾【含Matlab源码 1367期】
- mysql多表操作常用语法命令
- 绘图 | G2色块图
- 网易2019年春招笔试:爬塔玩法
- mac上如何测试html,Mac上实现Python用HTMLTestRunner生成html测试报告
- 横空出世的作业APP,会继续走俏还是就此堕落?
- 【科研绘图】-C4D搭建石墨烯
- SQL SERVER 数据库delete 未加where 条件数据误删恢复办法
- 情人节程序员用HTML网页表白【飘动的心-3D相册】 HTML5七夕情人节表白网页源码 HTML+CSS+JavaScript
热门文章
- 【Python基础入门系列】第04天:Python 流程控制
- python计算a的平方加b的平方_NumPy计算范数2的平方
- 在C++中用虚函数的作用是什么? 为什么要用到虚函数?
- cocos2dx 圆盘抽奖_cocoscreator之微信小游戏的抽奖转盘
- c++远征之继承篇——多重继承,多继承,虚继承,多继承时的重复定义解决方法
- 安装rlwrap 的简单方法
- Spring系列(六) Spring Web MVC 应用构建分析
- P1133 教主的花园 (动态规划)
- iOS开发针对对Masonry下的FPS优化讨论
- 系统权限管理设计 (转)