博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用枚举enum
阅读量:5357 次
发布时间:2019-06-15

本文共 1880 字,大约阅读时间需要 6 分钟。

枚举可以把常量按照类别组织起来, 并且提供了构造方法和其他访问方法

用法:

package com.nel.testPro.useage.use_enum;public enum Color implements Behaviour{        RED, YELLOW, BLUE, PINK("pink", 3); // 使用枚举, 可以将常量分类, 而且能提供比操作常量跟更多的方法        // 自定义属性    private String name;        private Integer index;        public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    public Integer getIndex() {        return index;    }    public void setIndex(Integer index) {        this.index = index;    }    Color () {            }    // 自定义构造方法    Color(String name, Integer index) {        this.name = name;        this.index = index;    }         // 普通方法    public static String getName(Integer index) {                for (Color c : Color.values()) {            if (c.getIndex() == index) {                return c.getName();            }        }        return "not found";    }         // 覆盖toString    @Override    public String toString() {        return "this is " + this.name;    }           // 可以实现接口, 扩展其方法    @Override    public void say() {        System.out.println("say " + this.getName());            }        }

测试:

public static void main(String[] args) {                Color color = Color.RED;                switch(color) {        case RED:            System.out.println("red");            break;        case BLUE:            System.out.println("blue");            break;        case YELLOW:            System.out.println("yellow");            break;        case PINK:            System.out.println("pink");        }                //        System.out.println(Color.getName(3));                //        System.out.println(Color.valueOf("PINK"));                //         System.out.println(Color.valueOf(Color.class, "BLUE"));                //        Color.PINK.say();            }

输出:

 

转载于:https://www.cnblogs.com/nelson-hu/p/7902976.html

你可能感兴趣的文章
Intellij idea创建javaWeb以及Servlet简单实现
查看>>
代理网站
查看>>
Open multiple excel files in WebBrowser, only the last one gets activated
查看>>
FFmpeg进行视频帧提取&音频重采样-Process.waitFor()引发的阻塞超时
查看>>
最近邻与K近邻算法思想
查看>>
【VS开发】ATL辅助COM组件开发
查看>>
FlatBuffers In Android
查看>>
《演说之禅》I & II 读书笔记
查看>>
thinkphp3.2接入支付宝支付接口(PC端)
查看>>
response和request
查看>>
【转】在Eclipse中安装和使用TFS插件
查看>>
回到顶部浮窗设计
查看>>
C#中Monitor和Lock以及区别
查看>>
【NOIP2017】奶酪
查看>>
$ 一步一步学Matlab(3)——Matlab中的数据类型
查看>>
5.6.3.7 localeCompare() 方法
查看>>
Linux下好用的简单实用命令
查看>>
常用web字体的使用指南
查看>>
描绘应用程序级的信息
查看>>
poj2406-Power Strings
查看>>