博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
enum枚举类型
阅读量:6697 次
发布时间:2019-06-25

本文共 1498 字,大约阅读时间需要 4 分钟。

hot3.png

enum枚举类型

1、 简单的例子:

public enum  Dana { A,B,C,D}//在这里创建了一个名为Dana的枚举类型,它有四个具名值,由于枚举类型的实例是常量,因此按照命名惯例它们都用大写字母表示(有多个单词则用下划线连接) public static void main(String[] args) {
Dana dana = Dana.A; System.out.println(dana); }}

在创建enum时,编译器会自动添加一些有用的特性,比如,

  它会创toString()方法,以便你可以很方便地显示某个enum实例的名字,上面打印出来的效果也是这个原理;

  编译器还会创建ordinal()方法,用来表示某个特定enum常量的声明顺序;
 以及static values()方法,用来在按照enum常量的声明顺序.产生由这些常量值构成的数组:

public class EnumOrder {
public static void main(String[] args) {
for (Dana dana : Dana.values()) {
System.out.println(dana + ",ordinal " + dana.ordinal()); } } }

2、 枚举在switch中的使用

switch 中的值类型只能为:byte ,short,char,int,String(在jdk1.7后也支持了),enum类型。

package enumDemo;import enumDemo.Enum.test;public class TestEnumAndSwitch { test t; public TestEnumAndSwitch(test t){
this.t = t; } public void describe(){
System.out.println("This TestEnumAndSwitch is "); switch(t){
case NOT: System.out.println("not spicy at all"); break; case MILD: System.out.println("=========1"); case MEDIUM: System.out.println("a little hot"); break; case HOT: System.out.println("=========2"); case FLAMING: System.out.println("=========3"); default: System.out.println("maybe too hot"); } } public static void main(String[] args) {
TestEnumAndSwitch t1 = new TestEnumAndSwitch(test.NOT), t2 = new TestEnumAndSwitch(test.MEDIUM), t3 = new TestEnumAndSwitch(test.HOT); t1.describe(); t2.describe(); t3.describe(); }}

转载于:https://my.oschina.net/PrivateO2/blog/1575765

你可能感兴趣的文章
使用 NodeJS+Express+MySQL 实现简单的增删改查
查看>>
css页面布局
查看>>
poj2750 PottedFlower(线段树的环状操作)
查看>>
MySQL索引底层实现原理
查看>>
iOS中有两种支持机制:Notification和KVO(Key-Value Observing)
查看>>
NSLog的常用格式说明小释
查看>>
ionic3 cordova ionic-native插件
查看>>
android传递数据bundle封装传递map对象
查看>>
Thread详解
查看>>
javascript校验2
查看>>
Grovvy初识
查看>>
【大数据系列】hadoop单节点安装官方文档翻译
查看>>
代码生成
查看>>
使用模板引擎artTemplate的几个问题总结
查看>>
Linux基本命令+Makefile
查看>>
加强团队凝聚力建设方面采取的方法
查看>>
Spring Boot 使用常见问题
查看>>
Linux 常用命令
查看>>
Angularjs 动态添加指令并绑定事件
查看>>
iOS开发~UI布局(二)storyboard中autolayout和size class的使用详解
查看>>