枚举简介

enum 的全称为 enumeration, 是 JDK 1.5  中引入的新特性,存放在 java.lang 包中

在实际编程中,往往存在着这样的“数据集”,它们的数值在程序中是稳定的,而且“数据集”中的元素是有限的。

此时枚举可以很方便的表示这样的简单的数据集

枚举和数值的相互转化

步骤:

  1.首先定义一个枚举类:例如atEnum

  2.在枚举类中创建一个枚举构造方法:private atnum(int value)

  3.创建将枚举值转换成数值的的方法:

  4创建将数值转换成对应的枚举值

public class Test01 {

    public static void main(String[] args) {
System.out.println(atEnum.b.enumToInt()); //输出枚举值b对应的数字
System.out.println(atEnum.intToEnum(1)); //输出1对应的枚举值
}
private enum atEnum{//定义一个枚举类
a(0),b(1),c(2),d(3),e(4); private int value; private atEnum(int value){//编写枚举的构造函数,这里的构造方法只能是私有的
this.value=value;
} public static atEnum intToEnum(int value) { //将数值转换成枚举值
switch (value) {
case 0:
return a;
case 1:
return b;
case 2:
return c;
case 3:
return d;
case 4:
return e;
default :
return null;
}
}
public int enumToInt() { //将枚举值转换成数值
return this.value;
}
}
}

利用枚举的方法转换成int数值:枚举所对应的下标值

创建枚举类:

private static enum color{
red,blue,yellow,green
}

枚举方法ordinal()   返回结果int类型

public static void main(String[] args) {
// TODO Auto-generated method stub System.out.println("red=========="+color.red.ordinal());
System.out.println("blue=========="+color.blue.ordinal());
System.out.println("yellow=========="+color.yellow.ordinal());
System.out.println("green=========="+color.green.ordinal());
}

运行结果   如图

java 枚举和数值的相互转换的更多相关文章

  1. Java枚举类型的使用,数值的二进制表示

    一.Java枚举类型的使用 首先请看这段代码: package java上课; public class EnumTest { public static void main(String[] arg ...

  2. Java 枚举用法详解

    概念 enum 的全称为 enumeration, 是 JDK 1.5 中引入的新特性. 在Java中,被 enum 关键字修饰的类型就是枚举类型.形式如下: enum Color { RED, GR ...

  3. java枚举与.net中的枚举区别

    通过一段时间的项目实践,发现java中的枚举与.net中的枚举有很大的差别,初期造成了我对java中的枚举一些错误理解及部分有缺陷的应用,其实追其原因还是因为我会习惯性的认为java的枚举在作用以及定 ...

  4. java 枚举类型分析

    最近做android开发,需要用到枚举值,这样可以连续赋值,我按之前c++那样书写,如下所示: public enum ColorSelect { RED_BAGE = 0, GREEN_BAGE, ...

  5. java枚举使用详解,整理的很好,只能收下。。。

    java枚举使用详解 在实际编程中,往往存在着这样的“数据集”,它们的数值在程序中是稳定的,而且“数据集”中的元素是有限的. 例如星期一到星期日七个数据元素组成了一周的“数据集”,春夏秋冬四个数据元素 ...

  6. java枚举怎么用的

    package com.pingan.property.icore.pap.common.constants; /** * */public enum UMAuthStatusEnum impleme ...

  7. 深入理解Java枚举

    深入理解Java枚举 重新认识Java枚举 老实说,挺羞愧的,这么久了,一直不知道Java枚举的本质是啥,虽然也在用,但是真不知道它的底层是个啥样的 直到2020年4月28日的晚上20点左右,我才真的 ...

  8. 秒懂系列,超详细Java枚举教程!!!

    所有知识体系文章,GitHub已收录,欢迎Star!再次感谢,愿你早日进入大厂! GitHub地址: https://github.com/Ziphtracks/JavaLearningmanual ...

  9. 【转】java枚举类型enum的使用

    原文网址:http://blog.csdn.net/wgw335363240/article/details/6359614 java 枚举类型enum 的使用 最近跟同事讨论问题的时候,突然同事提到 ...

随机推荐

  1. ThreadLocal 是什么?(未完成)有哪些使用场景?(未完成)

    ThreadLocal 是什么?(未完成)有哪些使用场景?(未完成)

  2. vue 后台获取文件流导出excel文件

    let params = { compStartTm: Date.parse(this.searchForm.compStartTm) / 1000, compEndTm: Date.parse(th ...

  3. JDK源码那些事儿之红黑树基础上篇

    说到HashMap,就一定要说到红黑树,红黑树作为一种自平衡二叉查找树,是一种用途较广的数据结构,在jdk1.8中使用红黑树提升HashMap的性能,今天就来说一说红黑树. 前言 限于篇幅,本文只对红 ...

  4. 跨域问题——学习ing

    问题 跨域:我写了一个页面,在js中写了请求,这个请求的url跟我这个页面不在一个域名,那么这个请求就是跨域请求. 跨域会怎么样:没见过,可能就不让你请求呗,为了安全考虑之类的.(涉及浏览器的同源策略 ...

  5. ubuntu redis 安装 &基本命令

    参考资料:https://www.cnblogs.com/zongfa/p/7808807.htmlredis命令参考:http://doc.redisfans.com/安装:sudo apt-get ...

  6. airflow--调度研究

    1.从调度到airflow ETL,是英文 Extract,Transform,Load 的缩写,用来描述将数据从来源端经过抽取(extract).转换(transform).加载(load)至目的端 ...

  7. C# 重写IComparer 接口

    首先定义比较类 继承自IComparer<Racer> public class RacerComparer : IComparer<Racer> { public enum ...

  8. BZOJ 3925: [Zjoi2015] 地震后的幻想乡(概率DP)

    这里有一篇很好很强的博客%%% YouSiki大佬的博客 多理解一会就行了- 代码 #include <bits/stdc++.h> using namespace std; typede ...

  9. soapui如何发送xml格式的字符串

    一个服务需要的xml格式的字符串参数,用soapUI传递参数时要这样写: <![CDATA[<?xml version="1.0" encoding="UTF ...

  10. [Luogu] 程序自动分析

    题面:https://www.luogu.org/problemnew/show/P1955 题解:https://www.zybuluo.com/wsndy-xx/note/1143858