一篇文章让你三分钟学会Java枚举

 更新时间:2020年12月09日 14:29:31   作者:程序员小哲  
这篇文章主要给大家介绍了如何通过三分钟学会Java枚举的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

什么是枚举

至于枚举,我们先拿生活中的枚举来入手,然后再引申Java中的枚举,其实它们的意义很相似。

谈到生活中的枚举,假如我们在玩掷骰子的游戏,在我们手中有两个骰子,要求掷出两个骰子的点数和必须大于6的概率,那么在此情此景,我们就需要使用枚举法一一列举出骰子点数的所有可能,然后根据列举出来的可能,求出概率。

可能有的小伙伴发现,这就是数学啊?这就是数学中的概率学和统计学。对,我们的枚举法就是常用于概率统计中的。

枚举类enum是jdk1.5引入的,全称enumeration,和class、interface的地位一样,存在java.lang包中

使用步骤

我认为枚举的使用方法主要分为以下几步:

一:定义枚举类型

二:定义私有变量(私有变量的数量取决于枚举类型括号里面的参数数量)

三:重载构造方法

四:编写get/set方法

五:调用枚举类

创建枚举类

/**
 * 创建枚举对象
 * 注意事项:
 * 一:定义枚举类型
 * 二:定义私有变量(私有变量的数量取决于枚举类型括号里面的参数数量)
 * 三:重载构造方法
 * 四:编写get/set方法
 */
public enum MyEnumDemo {

 //一:定义枚举类型
 HELLO("hello","1","haha1"),
 WORLD("world","2","haha2"),
 OTHER("other","3");

 //二:定义私有变量(私有变量的数量取决于枚举类型括号里面的参数数量)
 private String demo1;
 private String demo2;
 private String demo3;

 //三:重载构造方法
 MyEnumDemo(String demo1, String demo2) {
 this.demo1 = demo1;
 this.demo2 = demo2;
 }

 //三:重载构造方法
 MyEnumDemo(String demo1, String demo2, String demo3) {
 this.demo1 = demo1;
 this.demo2 = demo2;
 this.demo3 = demo3;
 }

 //四:编写get/set方法
 public String getDemo1() {
 return demo1;
 }

 public void setDemo1(String demo1) {
 this.demo1 = demo1;
 }

 public String getDemo2() {
 return demo2;
 }

 public void setDemo2(String demo2) {
 this.demo2 = demo2;
 }

 public String getDemo3() {
 return demo3;
 }

 public void setDemo3(String demo3) {
 this.demo3 = demo3;
 }

}

测试枚举类

import org.junit.Test;

public class Demo {

 @Test
 public void hah(){
 System.out.println("--------------------------");
 System.out.println(MyEnumDemo.HELLO);
 System.out.println(MyEnumDemo.HELLO.getDemo1());
 System.out.println(MyEnumDemo.HELLO.getDemo2());
 System.out.println(MyEnumDemo.HELLO.getDemo3());
 System.out.println("--------------------------");
 System.out.println(MyEnumDemo.WORLD);
 System.out.println(MyEnumDemo.WORLD.getDemo1());
 System.out.println(MyEnumDemo.WORLD.getDemo2());
 System.out.println(MyEnumDemo.WORLD.getDemo3());
 System.out.println("--------------------------");
 System.out.println(MyEnumDemo.OTHER);
 System.out.println(MyEnumDemo.OTHER.getDemo1());
 System.out.println(MyEnumDemo.OTHER.getDemo2());
 System.out.println(MyEnumDemo.OTHER.getDemo3());
 System.out.println("--------------------------");
 }

}

输出结果

/**
 * 输出结果:
 * --------------------------
 * HELLO
 * hello
 * 1
 * haha1
 * --------------------------
 * WORLD
 * world
 * 2
 * haha2
 * --------------------------
 * OTHER
 * other
 * 3
 * null
 * --------------------------
 */

到此这篇关于三分钟学会Java枚举的文章就介绍到这了,更多相关三分钟学Java枚举内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • java中归并排序和Master公式详解

    java中归并排序和Master公式详解

    大家好,本篇文章主要讲的是java中归并排序和Master公式详解,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2022-01-01
  • springboot的http.server.requests服务请求流程源码

    springboot的http.server.requests服务请求流程源码

    这篇文章主要为大家介绍了springboot的http.server.requests服务请求流程源码,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12
  • java.util.ArrayDeque类使用方法详解

    java.util.ArrayDeque类使用方法详解

    这篇文章主要介绍了java.util.ArrayDeque类使用方法,java.util.ArrayDeque类提供了可调整大小的阵列,并实现了Deque接口,感兴趣的小伙伴们可以参考一下
    2016-03-03
  • maven查看依赖树的方法实现

    maven查看依赖树的方法实现

    Maven依赖树是以当前项目的POM文件为根节点,列出了所有直接或间接依赖的依赖树结构,本文就详细的来介绍一下如何查看,感兴趣的可以了解一下
    2023-08-08
  • Java中的ReadWriteLock读写锁详解

    Java中的ReadWriteLock读写锁详解

    这篇文章主要介绍了Java中的ReadWriteLock读写锁详解,ReadWriteLock也是一个接口,提供了readLock和writeLock两种锁的操作机制,一个资源可以被多个线程同时读,或者被一个线程写,但是不能同时存在读和写线程,需要的朋友可以参考下
    2023-12-12
  • Springboot使用put、delete请求报错405的处理

    Springboot使用put、delete请求报错405的处理

    这篇文章主要介绍了Springboot使用put、delete请求报错405的处理方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07
  • springboot开启mybatis二级缓存的步骤详解

    springboot开启mybatis二级缓存的步骤详解

    这篇文章给大家介绍了springboot开启mybatis二级缓存的详细步骤,文中通过代码示例给大家讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-02-02
  • Java学习之如何进行JSON解析

    Java学习之如何进行JSON解析

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它算是JavaScript语言的一部分,与XML一样都可以用于数据的存储和传输,本文讲给大家介绍如何进行JSON解析,需要的朋友可以参考下
    2023-12-12
  • java身份证合法性校验并提取身份证有效信息

    java身份证合法性校验并提取身份证有效信息

    这篇文章主要为大家详细介绍了java身份证合法性校验,并获取并根据身份证号提取身份证相关信息,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-08-08
  • 详解MyBatis的getMapper()接口、resultMap标签、Alias别名、 尽量提取sql列、动态操作

    详解MyBatis的getMapper()接口、resultMap标签、Alias别名、 尽量提取sql列、动态操作

    这篇文章主要介绍了详解MyBatis的getMapper()接口、resultMap标签、Alias别名、 尽量提取sql列、动态操作的相关资料,需要的朋友可以参考下
    2016-08-08

最新评论