【学习笔记】Java实用类:枚举(Enum)
Java API(Java Application Programming Interface)Java应用程序编程接口。。。
实用类:Java API提供了几个常用包:
1.java.lang:编写Java程序时最广泛使用的包,自动导入所有的程序中,包含了Java程序的基础类和接口。包装类、Math类、String类等常用的类都包含在此包中,
java.lang包还提供了用于管理类的动态加载、外部进程创建、主机环境查询和安全策略实施等系统操作的类。
2.java.util:包含了系统辅助类,特别是Collection、List、Map等集合类。
3.java.io:包含了与输入/输出有关的类,如文件操作等类。
4.java.net:包含了与网络有关的类,如Socket、ServerSocket等类。
5.java.sql:包含了与数据库相关的类,如Connection、Statement等类。
一、从JDK1.5开始,Java程序设计语言引入了一种新的类型——枚举(Enum)
1.语法:
访问修饰符 enum 枚举名{
常量1[,常量2...[;]]
//[其他成员]
}
2.在语法中:
其他成员,包括构造方法,至于枚举常量的后面。
枚举常量类型必须以分号(;)结尾。
定义表示性别的枚举,包括两个枚举常量,分别代表“男”和“女”。
枚举其实就是一种类型,是java.lang.Enum类的子类,继承了Enum类的许多有用的方法。
二、枚举的应用
1.创建枚举类
/**
* 定义枚举类(星期)
* @author Administrator
*
*/
public enum Week {
Mon,Tue,Wed,Thu,Fri,Sat,Sun
}
2.使用枚举
/**
* 测试类
* @author Administrator
*
*/
public class Main {
/**
* 使用枚举
* @param day
*/
public void doWhat(Week day){
switch (day) {
case Mon:
case Thu:
case Wed:
case Tue:
case Fri:
System.out.println("工作日,努力写代码!");
break;
case Sat:
System.out.println("星期六,休息!看电影!");
break;
case Sun:
System.out.println("星期天,休息!打篮球!");
break;
default:
System.out.println("地球上一个星期就7天。");
break;
}
}
public static void main(String[] args) {
Main main = new Main();
main.doWhat(Week.Sun);
Week set = Week.Fri;
main.doWhat(set); } }
3.测试

三、在程序中使用枚举的好处总结如下:
1.枚举可以使代码更易于维护,有助于确保为变量指定合法的、期望的值。
2.枚举更易于输入,使用枚举赋值,只需要输入枚举名,然后输入一个点(.),就能将所有的值显示出来。
3.枚举使代码更清晰,允许用描述性的名称表示数据,使用时直观方便。
【学习笔记】Java实用类:枚举(Enum)的更多相关文章
- [java学习笔记]java语言核心----面向对象之this关键字
一.this关键字 体现:当成员变量和函数的局部变量重名时,可以使用this关键字来区别:在构造函数中调用其它构造函数 原理: 代表的是当前对象. this就是所在函数 ...
- [java学习笔记]java语言核心----面向对象之构造函数
1.构造函数概念 特点: 函数名与类名相同 不用定义返回值类型 没有具体的返回值 作用: 给对象进行初始化 注意: 默认构造函数 多个构造函数是以重载出现的 一个类中如果 ...
- 关于Java中枚举Enum的深入剖析
在编程语言中我们,都会接触到枚举类型,通常我们进行有穷的列举来实现一些限定.Java也不例外.Java中的枚举类型为Enum,本文将对枚举进行一些比较深入的剖析. 什么是Enum Enum是自Java ...
- Java学习笔记 -- Java定时调度工具Timer类
1 关于 (时间宝贵的小姐姐请跳过) 本教程是基于Java定时任务调度工具详解之Timer篇的学习笔记. 什么是定时任务调度 基于给定的时间点,给定的时间间隔或者给定的执行次数自动执行的任务. 在Ja ...
- C++和Java中枚举enum的用法
在C++和java中都有枚举enum这个关键字,但是它们之间又不太一样.对于C++来说,枚举是一系列命名了的整型常量,而且从枚举值转化为对应的整型值是在内部进行的.而对于Java来说,枚举更像一个类的 ...
- 聊一聊Java的枚举enum
一. 什么是枚举 枚举是一种数据类型,具有集合的一些特点,可以存放多个元素,但存储对象有限且固定,枚举也有比较常见的使用场景,如我们需要表达性别(男.女),颜色(红.黄.蓝),星期(星期一.星期二.. ...
- 大数据学习笔记——Java篇之网络编程基础
Java网络编程学习笔记 1. 网络编程基础知识 1.1 网络分层图 网络分层分为两种模型:OSI模型以及TCP/IP网络模型,前者模型分为7层,是一个理论的,参考的模型:后者为实际应用的模型,具体对 ...
- 大数据学习笔记——Java篇之IO
IO学习笔记整理 1. File类 1.1 File对象的三种创建方式: File对象是一个抽象的概念,只有被创建出来之后,文件或文件夹才会真正存在 注意:File对象想要创建成功,它的目录必须存在! ...
- 大数据学习笔记——Java篇之集合框架(ArrayList)
Java集合框架学习笔记 1. Java集合框架中各接口或子类的继承以及实现关系图: 2. 数组和集合类的区别整理: 数组: 1. 长度是固定的 2. 既可以存放基本数据类型又可以存放引用数据类型 3 ...
- [Java学习笔记] Java异常机制(也许是全网最独特视角)
Java 异常机制(也许是全网最独特视角) 一.Java中的"异常"指什么 什么是异常 一句话简单理解:异常是程序运行中的一些异常或者错误. (纯字面意思) Error类 和 Ex ...
随机推荐
- 【ARC075F】Mirrored 搜索/数位dp
Description 给定正整数DD,求有多少个正整数NN,满足rev(N)=N+Drev(N)=N+D,其中rev(N)rev(N)表示将NN的十进制表示翻转来读得到的数 Input 一个 ...
- python基础之内建函数(二)
(7)max() 函数:返回列表.元祖或字符串中最大的元素,注意:字母“大于”数字.小写字母“大于”大写字母(字母排序是根据ASCII码表排的) 例如: >>>num = list ...
- time、random以及序列化模块
一. time模块 在Python中,通常有这几种方式来表示时间: 时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量.我们运行“type( ...
- Unity---动画系统学习(1)---在状态机中简单控制物体运动
1. 介绍 新建一个GameObject-Cube,在Window下添加Animation(快捷键ctrl+6).会添加用于播放动画的三个东西.物体上的Animator组件.Animator Cont ...
- php 百万级数据文件导出
背景:最近一个需求是从mysql里面读取数据(有点大),然后导出为csv文件 问题 :发现导出的过程中自己中断了,没有报错 . 第一反应是测试导出一个小一点的数据(少查几条),发现没问题 . 查看导出 ...
- Android 通知(Notification)
1.介绍 2.常用属性 3.java后台代码 package com.lucky.test30notification; import android.app.Notification; import ...
- [FJOI2017]矩阵填数
[Luogu3813] [LOJ2280] 写得很好的题解 \(1.\)离散化出每一块内部不互相影响的块 \(2.\)\(dp[i][j]\)为前 \(i\) 种重叠块其中有 \(j\) 这些状态的矩 ...
- Poj:1064 : :Cable master (假定一个解并判断是否可行)(二分搜索答案)
Description Inhabitants of the Wonderland have decided to hold a regional programming contest. The J ...
- UVA - 11404
题意:求任意删除字符后所形成的最长回文,并输出字典序最小的方案 把原串反转求LIS,因为转移时不断求字典序最小导致后半部分可能并非回文,所以要前半部分输出两边 话说这方案保存可真暴力 #include ...
- c#和java的深拷贝CloneObject
public static T Clone<T>(this T source) { if (!typeof(T).IsSerializable) { throw new ArgumentE ...