首页 > 编程语言 >java Enum 枚举

java Enum 枚举

时间:2023-01-27 12:55:26浏览次数:35  
标签:ordinal LevelEnum name Enum 枚举 java

简介

java 枚举是一个特殊的类,一般表示常量,比如一周7天,一年4个季节。

示例

enum LevelEnum {
    LOW,
    MEDIUM,
    HIGH
}

遍历

public class EnumTest {
    public static void main(String[] args) {
        LevelEnum myVal = LevelEnum.LOW;
        System.out.println(myVal);

        // for 循环
        for (LevelEnum level : LevelEnum.values()) {
            System.out.println(level + "  name->" + level.name() + " ordinal->" + level.ordinal());
        }
    }
}

输出

LOW
LOW  name->LOW ordinal->0
MEDIUM  name->MEDIUM ordinal->1
HIGH  name->HIGH ordinal->2

Enum定义

public abstract class Enum<E extends Enum<E>>
        implements Comparable<E>, Serializable {
    /**
     * The name of this enum constant, as declared in the enum declaration.
     * Most programmers should use the {@link #toString} method rather than
     * accessing this field.
     */
    private final String name;
...
}

enum 定义的枚举类默认继承了 java.lang.Enum 类,并实现了 java.lang.Serializable 和 java.lang.Comparable 两个接口。

values(), ordinal() 和 valueOf() 方法位于 java.lang.Enum 类中:

  • values() 返回枚举类中所有的值
  • ordinal()方法可以找到每个枚举常量的索引,就像数组索引一样
  • valueOf()方法返回指定字符串值的枚举常量

 System.out.println(LevelEnum.valueOf("MEDIUM"));

 

 

标签:ordinal,LevelEnum,name,Enum,枚举,java
From: https://www.cnblogs.com/kaituorensheng/p/17068822.html

相关文章

  • LESSON FOUR:Java基础语法(上)
    Java基础语法注释单行注释://注释内容多行注释:/*注释内容*/文档注释:/**注释内容*//*.---..-----------*/\__/------*......
  • 浪 - Java
    如果你的计算机还没有安装Java,这篇说明很适合你.OpenJDK下载地址历史版本归档环境配置cd~/.localwgethttps://download.java.net/java/ga/jdk11/openjdk-1......
  • Javase多态(对多态的理解、多态的体现)
    前言刚开始学Java的时候对多态这个概念一直没弄太明白,随着后面的学习无意中都在用着多态,又看了一些文章决定整理一下!举例创建一个Person类,Student类继承Person类,并分别创建......
  • 读Java8函数式编程笔记02_流
    1. 外部迭代1.1. for循环是一个封装了迭代的语法糖1.1.1. 本质上来讲是一种串行化操作1.2. 很难抽象出不同操作2. 内部迭代2.1. 内部迭代中的相应接口:Stream......
  • 【Javaweb】Servlet* | 请求重定向【
    请求重定向的含义请求重定向,是指客户端给服务器发请求,然后服务器告诉客户端说。我给你一些地址,你去新地址访问,叫请求重定向(因为之前的地址可能已经废弃)。  请求重定......
  • 【Javaweb】Servlet十 | HttpServletResponse类和HttpServletRequest类
    HttpServletResponse类的作用HttpServletResponse类和HttpServletRequest类一样。每次请求进来,Tomcat服务器都会创建一个Response对象传递给Servlet程序去使用。HttpS......
  • 【Javaweb】Servlet九 | base标签的作用【详细介绍】
    base标签的作用导言:路径跳转<ahref="/a/b/c.html">这是a下的b下的c</a></br><ahref="/ForwardC">请求转发:这是a下的b下的c</a></br><ahref="../../index.jsp">跳......
  • JavaScript – Group / GroupToMap
    前言arraygroupby是一个很常见的功能.但JS却没有build-in方法.一直到es2023才有group和groupToMap(目前没有任何游览器支持,但已经有polyfill了).这篇......
  • Java基于ssm师生实验课-实验室-实验设备预约系统源码
    简介java+ssm开发的实验课实验设备实验室预约系统,老师可预约实验设备和实验室,然后发布实验课和上传实验附件。学生可以报名实验课,也可以自己预约实验室(部分实验室对学生......
  • Java基于springboot大学生宿舍寝室考勤人脸识别管理系统
    简介Java基于springboot开发的大学生寝室管理系统宿舍管理系统。学生可以查找寝室和室友信息,可以申请换寝室,申请维修,寝室长提交考勤信息(宿管确认学生考勤信息),补签,查看寝室......