• java 枚举和数值的相互转换


    枚举简介

    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());
        }

    运行结果   如图

  • 相关阅读:
    background-position-x和background-position-y的兼容性问题
    用SVGDeveloper制作svg地图
    实现绝对定位元素水平垂直居中的两种方法
    用-webkit-box-reflect制作倒影
    解决ul的li横向排列换行的问题
    用echarts.js制作中国地图,点击对应的省市链接到指定页面
    css3制作扇形菜单
    IE7中a标签包含img,点击img,链接失效的bug
    ie7中position:fixed定位后导致margin:0 auto;无效
    背景图片铺满全屏的方法
  • 原文地址:https://www.cnblogs.com/kuoAT/p/6808568.html
Copyright © 2020-2023  润新知