Java基础_枚举类型
作用:让数据更简洁,更易读,增加代码可读性。
为了用1,2,3,4,5分别表示老师,学生,小组,班主任,后勤,可以直接设置一个变量,让roleType = 1,但这样写代码可读性差。
也可以定义一个成员类,分别给不同的静态成员赋1,2,3,4,5,在需要调用的地方,直接通过RoleType.xxx去进行变量的赋值,如下:

package com.Gary2;
public class CustomEnum {
    public static void main(String[] args) {
        //1老师 2学生 3小组 4班主任 5后勤
        //可读性差
//        int roleType = 2;
//        int roleType2 = 5;
        //学生
        int roleType = RoleType.STUDENT;
        //后勤
        int roleType2 = RoleType.LOGISTICS;
    }
}
RoleType.java
package com.Gary2;
public class CustomEnum {
    public static void main(String[] args) {
        //1老师 2学生 3小组 4班主任 5后勤
        //可读性差
//        int roleType = 2;
//        int roleType2 = 5;
        //学生
        int roleType = RoleType.STUDENT;
        //后勤
        int roleType2 = RoleType.LOGISTICS;
    }
}
CustomEnum.java
枚举类型就是对RoleType.class进行简化

package com.Gary2; //枚举
public enum RoleTypeEnum { //不需要直接赋值,默认从0开始依此增加,实际上是int类型
TEACHER,
STUDENT,
PRINCIPAL,
HEADTEACHER,
LOGISTICS }
RoleTypeEnum.java
package com.Gary2;
public class CustomEnum {
    public static void main(String[] args) {
        //1老师 2学生 3小组 4班主任 5后勤
        //可读性差
//        int roleType = 2;
//        int roleType2 = 5;
        //学生
        //int roleType = RoleType.STUDENT;
        //后勤
        //int roleType2 = RoleType.LOGISTICS;
        //使用枚举类型
        RoleTypeEnum rt1 = RoleTypeEnum.TEACHER;
        RoleTypeEnum rt2 = RoleTypeEnum.STUDENT;
        System.out.println(rt1);
        System.out.println("取得所代表int类型"+rt1.ordinal());
    }
}
CustomEnum.java
使用增强for循环遍历枚举类型中的值
  for(RoleTypeEnum rt :RoleTypeEnum.values()) {
    System.out.println(rt);
  }

package com.Gary2;
public class CustomEnum {
    public static void main(String[] args) {
        //1老师 2学生 3小组 4班主任 5后勤
        //可读性差
//        int roleType = 2;
//        int roleType2 = 5;
        //学生
        //int roleType = RoleType.STUDENT;
        //后勤
        //int roleType2 = RoleType.LOGISTICS;
        //使用枚举类型
        RoleTypeEnum rt1 = RoleTypeEnum.TEACHER;
        RoleTypeEnum rt2 = RoleTypeEnum.STUDENT;
        for(RoleTypeEnum rt :RoleTypeEnum.values()) {
            System.out.println(rt);
        }
    }
}
CustomEnum.java
Java基础_枚举类型的更多相关文章
- 【转】Java基础笔记 – 枚举类型的使用介绍和静态导入--不错
		原文网址:http://www.itzhai.com/java-based-notes-introduction-and-use-of-an-enumeration-type-static-impor ... 
- Java基础之枚举类型Enum的使用
		Java基础之枚举类型Enum的使用 定义 public enum AccruedCleanEnum { SPREAD("1","发票"),OTHER(&quo ... 
- java基础(十一)  枚举类型
		枚举类型Enum的简介 1.什么是枚举类型 枚举类型: 就是由一组具有名的值的有限集合组成新的类型.(即新的类). 好像还是不懂,别急,咱们先来看一下 为什么要引入枚举类型 在没有引入枚举类型前,当我 ... 
- Java基础之枚举类型
		枚举 为什么需要枚举 在Java开发过程中,有时需要定义一系列有限的数据,如:月份.星期等.<br> java1.5之前,主要通过定义一系列静态常量完成. class Genders{ p ... 
- Java基础教程——枚举类型
		枚举类型 枚举类型在JDK 5时引入. enum WeekEnum { MONDAY, TUESDAY, WEDNESDAY, THURDAY, FRIDAY, SATURDAY, SUNDAY } ... 
- 黑马程序员:Java基础总结----枚举
		黑马程序员:Java基础总结 枚举 ASP.Net+Android+IO开发 . .Net培训 .期待与您交流! 枚举 为什么要有枚举 问题:要定义星期几或性别的变量,该怎么定义?假设用1-7分别 ... 
- 全面解读Java中的枚举类型enum的使用
		这篇文章主要介绍了Java中的枚举类型enum的使用,开始之前先讲解了枚举的用处,然后还举了枚举在操作数据库时的实例,需要的朋友可以参考下 关于枚举 大多数地方写的枚举都是给一个枚举然后例子就开始sw ... 
- Java基础之枚举
		Java基础之枚举 作为1.5才增加的特性,枚举的使用并不是很多. 枚举其实就是一个比较特殊的类,就如同注解其实也是个特殊的接口一样(注解反编译之后没有了@符号).枚举使用enum关键字声明,通过反编 ... 
- Java中的枚举类型详解
		枚举类型介绍 枚举类型(Enumerated Type) 很早就出现在编程语言中,它被用来将一组类似的值包含到一种类型当中.而这种枚举类型的名称则会被定义成独一无二的类型描述符,在这一点上和常量的定义 ... 
随机推荐
- Windows phone 8  二维码生成与扫描
			1. 二维码的生成 二维码生成用到了一个第三方的插件(zxing.wp8.0) 根据指定的信息,生成对应的二维码. 代码很简单: bool falg=tbk.Text==""?fa ... 
- c# 粘贴复制
			复制 1. 复制 Clipboard.SetText("123456"); Clipboard.SetImage(Image img); Clipboard.SetAudio(Sy ... 
- echarts 内存泄漏
			最近使用vue + Echarts 实现vue项目的数据可视化功能的时候,在ios环境下,点击列表页进入详情页几次就白屏了. 感觉白屏的原因是:echarts频繁初始化画图时候有内存泄漏,吃掉了所有内 ... 
- asp.net ListView控件的简单实用和配置
			1 web窗体界面代码 ItemType:控件要绑定的实体模型 SelectMethod:控件获取实体集合的后台方法 DataKeyNames:实体的主键 UpdateProduct:设置跟新的方法 ... 
- select —— poll —— epoll
			import socket,select s=socket.socket() s.setblocking(False) s.setsockopt(socket.SOL_SOCKET,socket. ... 
- 理解 chroot
			什么是 chroot chroot,即 change root directory (更改 root 目录).在 linux 系统中,系统默认的目录结构都是以 `/`,即是以根 (root) 开始的. ... 
- 封装Server类和Client类
			服务器端: EasyTcpServer.hpp #ifndef _EasyTcpServer_hpp_ #define _EasyTcpServer_hpp_ #ifdef _WIN32 #defin ... 
- Linux上jdk,mysql,tomcat安装
			一:RPM(红帽软件包管理器):相当于windows的添加/卸载程序(控制面板),进行程序的安装.更新.卸载.查看: 本地程序安装:rpm -ivh 程序名 本地程序查看:rpm -qa 本地程序卸载 ... 
- 【实用linux命令记录】
			1.显示完整的进程命令 cat /proc/29049/cmdline 如上面显示不完整可用当前的 cat /proc/进程号/cmdline显示 vtysh下显示完整的配置 
- 团队第二次作业:需求分析&系统设计
			所属课程 https://edu.cnblogs.com/campus/xnsy/Autumn2019SoftwareEngineeringFoundation/ 作业要求 https://edu.c ... 
