枚举的本质是类,枚举是用来构建常量数据结构的模板(初学者可以以此方式理解: public static final X=xxx),枚举的使用增强了程序的健壮性,在引用一个不存在的枚举值的时候,编译器会报错。

案例1:  

public enum Grade {
A,B,C,D
}
public class Test {
public static void main(String[] args) {
System.out.println(Grade.A);
System.out.println(Grade.B);
System.out.println(Grade.C);
System.out.println(Grade.D);
}
}

结果输出: 

  A   B  C  D

案例2:

public enum Grade {
A("81-100"),B("71-80"),C("61-70"),D("0-60");
private String value;
private Grade(String value){
this.value=value;
}
public String getValue(){
return this.value;
}
}
public class Test {
public static void main(String[] args) {
System.out.println(Grade.A);
System.out.println(Grade.A.getValue());
System.out.println(Grade.B);
System.out.println(Grade.B.getValue());
System.out.println(Grade.C);
System.out.println(Grade.C.getValue());
System.out.println(Grade.D);
System.out.println(Grade.D.getValue());
}
}

结果:

  A 81-100 B 71-80 C 61-70 D 0-60

案例3:

public enum Grade {

    A("81-100") {
@Override
public String toLocalString() {
return "优";
}
},B("71-80") {
@Override
public String toLocalString() {
return "良";
}
},C("61-70") {
@Override
public String toLocalString() {
return "中";
}
},D("0-60") {
@Override
public String toLocalString() {
return "差";
}
}; private String value; private Grade(String value){
this.value=value;
} public String getValue(){
return this.value;
} public abstract String toLocalString();
}
public class Test {

    public static void main(String[] args) {

        System.out.println(Grade.A);
System.out.println(Grade.A.getValue());
System.out.println(Grade.A.toLocalString());
System.out.println(Grade.B);
System.out.println(Grade.B.getValue());
System.out.println(Grade.B.toLocalString());
System.out.println(Grade.C);
System.out.println(Grade.C.getValue());
System.out.println(Grade.C.toLocalString());
System.out.println(Grade.D);
System.out.println(Grade.D.getValue());
System.out.println(Grade.D.toLocalString()); } }

结果:

  A 81-100 优 B 71-80 良 C 61-70 中 D 0-60 差

java枚举详解的更多相关文章

  1. Java 枚举详解

    为什么要用枚举 在博客系统中,一篇文章有且可能有这几种状态, 数据库中article文章表中state字段存储数值,表示其状态: 0(已发表Published) 1(草稿Draft) 2(撤回撤回(D ...

  2. Java Annotation详解 理解和使用Annotation

    系统中用到了java注解: 查了一下如何使用注解,到底注解是什么: (1)创建方法:MsgTrace Java Class==> 在Create New Class中: name:输入MsgTr ...

  3. Java IO 详解

    Java IO 详解 初学java,一直搞不懂java里面的io关系,在网上找了很多大多都是给个结构图草草描述也看的不是很懂.而且没有结合到java7 的最新技术,所以自己来整理一下,有错的话请指正, ...

  4. java关键字(详解)

    目录 1. 基本类型 1) boolean 布尔型 2) byte 字节型 3) char 字符型 4) double 双精度 5) float 浮点 6) int 整型 7) long 长整型 8) ...

  5. Java集合详解3:Iterator,fail-fast机制与比较器

    Java集合详解3:Iterator,fail-fast机制与比较器 今天我们来探索一下LIterator,fail-fast机制与比较器的源码. 具体代码在我的GitHub中可以找到 https:/ ...

  6. Java集合详解3:一文读懂Iterator,fail-fast机制与比较器

    <Java集合详解系列>是我在完成夯实Java基础篇的系列博客后准备开始写的新系列. 这些文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查 ...

  7. Java集合详解1:一文读懂ArrayList,Vector与Stack使用方法和实现原理

    本文非常详尽地介绍了Java中的三个集合类 ArrayList,Vector与Stack <Java集合详解系列>是我在完成夯实Java基础篇的系列博客后准备开始写的新系列. 这些文章将整 ...

  8. 9种Java单例模式详解(推荐)

    单例模式的特点 一个类只允许产生一个实例化对象. 单例类构造方法私有化,不允许外部创建对象. 单例类向外提供静态方法,调用方法返回内部创建的实例化对象.  懒汉式(线程不安全) 其主要表现在单例类在外 ...

  9. Java内部类详解

    Java内部类详解 说起内部类这个词,想必很多人都不陌生,但是又会觉得不熟悉.原因是平时编写代码时可能用到的场景不多,用得最多的是在有事件监听的情况下,并且即使用到也很少去总结内部类的用法.今天我们就 ...

随机推荐

  1. CQRS架构下的Saga流程重构

  2. 开发过程中git的使用

    使用clone命令可以直接将git添加到本地库: 主要是针对分支的操作: 首先可以将创建一个属于自己的分支并往上面提交代码,最后合并到dev分支和master分支上面: 前提(master已经有一个文 ...

  3. echart-折线图,数据太多想变成鼠标拖动和滚动的效果?以及数据的默认圈圈如何自定义圆圈的样式

    1.数据太多怎么办???想拖拽,想滑动 dataZoom: [ { type: 'slider', } ] dataZoom: [ { type: 'inside',  }] 两种功能都需要,还想调样 ...

  4. IDEA maven 配置,运行比较慢,加截本地仓库资源数据

    在 Runner 配置了参数: -DarchetypeCatalog=internal

  5. sql2008 误操作还原至指定时间点

    --drop database db --创建一个测试库 create database db go --备份一个完整备份文件 backup database db to disk = 'd:\db. ...

  6. Go实现分布式外部排序

    Go实现分布式外部排序 项目路径: https://github.com/Draymonders/go_external_sort 默认读入文件: small.in 默认输出文件:small.out ...

  7. Java基础之方法详解

    方法的所属性 在Java的语言中,方法相当于C语言中的函数,但是它与传统的函数也有着明确的不同:在结构化的语言中,函数是一等公民,整个程序是由一个个函数组成的:但是在面向对象的语言里,类是一等公民,整 ...

  8. [CSP-S模拟测试]:毛二琛(DP)

    题目描述 $MYC$在$NOI2018$中,遇到了$day1T2$这样一个题,题目是让你求有多少“好”的排列.$MYC$此题没有获得高分,感到非常惭愧,于是回去专心研究排列了.如今数排列的题对$MYC ...

  9. [Codeforces 274E]:Mirror Room(模拟)

    题目传送门 题目描述 有一个$n\times m$的格子图,其中有一些是黑色的,另一些为白色.从某个白色格子的中心点向左上($NW$),左下($SW$),右上($NE$),右下($SE$)四个方向中的 ...

  10. php system exexc 立即返回

    有时候会用到php调用服务器端的其它可执行文件,system和exec函数都是阻塞执行的,执行完第三方程序再返回. 如果我们需要立即返回,让第三方程序在后台继续执行,调用方式如下: linux,noh ...