• 枚举的遍历:

    enum Suit { CLUB, DIAMOND, HEART, SPADE }Collection<Suit> suitTypes = Arrays.asList(Suit.values());
    for (Suit suit : suitTypes) {...
    }

0. 枚举类的静态成员

比如一个枚举类 Month,通过 Month.values() 便可遍历其成员:

for (Month m : Month.values()) {....
}

1. 将 enum 视为一种特殊的类

也即可在其中添加成员方法,甚至 main() 方法。一般来说,我们希望每个枚举类型能够返回对自身的描述,而不仅仅是默认的 toString() 实现(只能返回枚举实例的名字)。为此,可以提供一个构造器,专门负责处理这个额外的描述信息。

public enum OzWitch{WEST("West"), NORTH("North"), SOUTH("South"), EAST("East");// 这些枚举实例的写法,括号内有字符串,相当于对 OzWitch 构造函数的一种调用;// 此时必须给出以字符串为参数的构造函数;如下private String desc;private OzWitch(String desc) {this.desc = desc;}public String getDesc() { return desc; }public static void main(String[] args) {for (OzWitch witch: OzWitch.values()){System.out.println(witch.getDesc());}}
}

2. 枚举中的抽象函数

public enum HourlyPayGrade {APPRENTICE {public double rate() {return 1.0;}},LEUTENANT_JOURNEYMAN {public double rate() {return 1.2;}},JOURNEYMAN {public double rate() {return 1.5;}},MASTER {public double rate () {return 2.0;}};public abstract double rate();}

Java 基础 —— enum相关推荐

  1. java java.lang.enum_源码阅读-java基础-java.lang.Enum

    1.引言 枚举类型是 JDK 5 之后引进的一种非常重要的引用类型,可以用来定义一系列枚举常量.相比与常量(public static final定义),在安全性.指意性.可读性方面更胜一筹.另外它可 ...

  2. 诚之和:Java基础知识枚举Enum类介绍以及案例使用详解

    Java语言中的数据类型可以分为两大类,分别是基本数据类型和引用数据类型.本篇文章要介绍的枚举,就是属于Java的引用数据类型.下面,将为大家详细介绍Java中的枚举,以及具体的使用案例. 一.文章序 ...

  3. Java基础概念性的知识总结

    属于个人的所学的知识总结,不是全面的 1.JDK.JRE和JVM三者的区别 01.JDK:(Java Development ToolKit)Java开发工具包,是整个Java的核心.包括了Java的 ...

  4. [Spring 深度解析]第1章 Java基础

    第1章 ◄Java基础► 在学习Spring之前我们需要对Java基础语法有一定的了解,Java中最重要的两个知识点是注解和反射.注解和反射在Spring框架中应用的最广泛.掌握注解和反射,有助于后面 ...

  5. Java基础-注解和反射

    Java基础-注解和反射 前言 对于注解,我主要还是在自定义APT还有运行时反射获取类来让自己能够构建出复用性更高的代码逻辑. 知识点1-注解: 注解的应用场景由元注解@Retention来进行指定, ...

  6. java 多态判断非空_跳槽涨薪季面试题之java基础(一)

    点击上方[全栈开发者社区]→右上角[...]→[设为星标⭐] 为迎接金九银十跳槽涨薪季,小编汇总了java精编版面试题,大概从java基础.java8特性.多线程.spring.springboot. ...

  7. Java基础语法(数组)

    第4天 Java基础语法 今日内容介绍 u 流程控制语句(switch) u 数组 第1章 流程控制语句 1.1 选择结构switch switch 条件语句也是一种很常用的选择语句,它和if条件语句 ...

  8. java 基础知识总结

    Java基础知识总结 写代码: 1,明确需求.我要做什么? 2,分析思路.我要怎么做?1,2,3. 3,确定步骤.每一个思路部分用到哪些语句,方法,和对象. 4,代码实现.用具体的java语言代码把思 ...

  9. java基础巩固笔记(6)-注解

    2019独角兽企业重金招聘Python工程师标准>>> java基础巩固笔记(6)-注解 标签: java [TOC] 注解(Annotation),也叫元数据.一种代码级别的说明. ...

最新文章

  1. PHP也玩并发,巧用curl 并发减少后端访问时间
  2. 关于SQL Server 2017中使用json传参时解析遇到的多层解析问题
  3. 价格的格式化 php,价格格式化问题。
  4. 永洪Desktop安装后启动提示缺少libv8_libbase.dll文件解决办法
  5. Could not find a version that satisfies the requirement requests (from version : )
  6. 误操作自动锁定计算机,当离开电脑时,需要手动锁定电脑屏幕,或设置10分钟无活动自动锁屏,短时间离开的锁屏就无关紧要()...
  7. Oracle DBA手记3:数据库性能优化与内部原理解析
  8. ADO.NET Entity Framework 实体框架映射方案
  9. 菜鸟译文(二)——使用Java泛型构造模板方法模式
  10. 不要在作死的边缘试探(最后那个英雄手势挺好玩儿的)
  11. python实时定位gps_Python获取原图GPS位置信息,轻松得到你的活动轨迹!
  12. matlab:Matlab基础教程 第一章 MATLAB简介 第二章 Matlab的基本使用方法
  13. 为软件添加全网排行榜
  14. 用c语言写一个求和的程序,用C语言编写一个“等比数列求和”的程序?
  15. 打印机如何打印白色_打印机可以打印白色吗?
  16. 层次聚类——linkage方法
  17. pythonxy是什么东西_无状态以太坊:二进制状态树实验
  18. 大三第十一周学习笔记
  19. SAP第三代增强——BADI解读
  20. GPS北斗双模技术应用开发研究--数据解析

热门文章

  1. C# 实现程序最小化到托盘
  2. C#制作不规则窗体的简单方法
  3. MFC 教程【11_MFC下的文件类 】
  4. 计算机应用基础操作演示,计算机应用基础上机操作题
  5. java中主函数_(基础)java中的主函数
  6. ndr4108贴片晶振是多少频率_流处理器、核心频率、 位宽……这些显卡参数你知道吗?—— 电脑硬件科普篇(八)...
  7. hadoop yarn如何启动聚合日志
  8. mysql后天命令查下显示_MySQL命令
  9. oracle sequence 应用,oracle应用之使用sequence批量写数据
  10. java hibernate的使用_java – 使用hibernate / JPA登录