JAVA 枚举
来源:互联网 发布:淘宝卖家留言在哪里 编辑:程序博客网 时间:2024/06/05 02:54
枚举的定义
枚举也是JDK5.0的新特性。
JDK5.0加入了一个全新类型的“类”——枚举类型。
为此引入了一个新的关键字enum。
可以这样来定义一个枚举类型:public enum Color{ Red, White, Blue,}
然后可以这样来使用:Color myColor = Color.Red;
枚举类型的静态方法
枚举类型提供了两个有用的静态方法values()和valueOf()。
values()返回枚举所有成员的数组。
values()方法的使用:
//values()方法的使用 for(Color color : Color.values()) { System.out.println(color); }
将输出:
Red
White
Blue
即values()输出定义在Color中的所有枚举类型。
而valueOf()将字符串转换成枚举值。
枚举的使用
枚举可以用在switch语句中。
public class EnumTest{ public static void doOperation(OpConstant opConstant) { switch (opConstant) { case TURN_LEFT: System.out.println("向左转"); break; case TURN_RIGHT: System.out.println("向右转"); break; case SHOOT: System.out.println("射击"); break; default: break; } } public static void main(String[] args) { doOperation(OpConstant.SHOOT); }}enum OpConstant{ TURN_LEFT, TURN_RIGHT, SHOOT,}
枚举的本质
public enum Coin{ penny("hello"), nickle("world"), dime("welcome"), quarter("hello world"); private String value; public String getValue() { return value; } Coin(String value) { this.value = value; } public static void main(String[] args) { Coin coin = Coin.quarter; System.out.println(coin.getValue()); }}
定义枚举类型时本质上就是在定义一个类别,只不过很多细节由编译器帮您完成,所以某种程度上,enum关键字的作用就像是class或interface。
当您使用“enum”定义枚举类型时,实质上您定义出来的类型继承自java.lang.Enum类型,而每个枚举的成员其实就是您定义的枚举类型的一个实例(Instance),它们都被预设为final,所以您无法改变它们,它们也是static成员,所以您可以通过类型名称直接使用它们,当然最重要的,它们都是公开的(public)。即枚举中的每个成员默认都是public static final的。
枚举的本质:
每个枚举的成员其实就是您定义的枚举类型的一个实例(Instance)。
当定义了一个枚举类型后,在编译的时候就能够确定该枚举类型有多少个实例,这些对象的名字是什么。在运行期间无法再使用该枚举类型创建新的实例。
0 0
- JAVA 枚举
- java枚举
- java枚举
- Java 枚举
- Java 枚举
- Java 枚举
- java 枚举
- java 枚举
- java枚举
- java枚举
- java枚举
- java枚举
- Java枚举
- java枚举
- java 枚举
- java枚举
- Java枚举
- Java枚举
- C语言输出数据到指定文件,要求长度相同,不同时前面补零
- Scikit-learn实战之SVM回归分析、密度估计、异常点检测
- Python基本语法元素入门
- 小项目---java编写的用年份和月份查询日历的类
- html中的table跨行跨列用法
- JAVA 枚举
- Foundation对象与Core Foundation对象间的转换:Toll-Free Birdge
- NEU 11月组队赛D题 QUERY ON THE TREE
- VMware10安装centOS7
- java 实现进程调度
- AJAX
- 1007. 素数对猜想
- 北京大学 C程序设计进阶 习题答案(一)
- 输入一串字符,输入头串与尾串,在该字符串里找出这段字符串