博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JAVA中枚举类的使用
阅读量:4209 次
发布时间:2019-05-26

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

JAVA中枚举类的使用

常量

public enum Color {    RED, GREEN, BLANK, YELLOW  }

switch

enum Signal {    GREEN, YELLOW, RED}public class TrafficLight {    Signal color = Signal.RED;    public void change() {        switch (color) {        case RED:            color = Signal.GREEN;            break;        case YELLOW:            color = Signal.RED;            break;        case GREEN:            color = Signal.YELLOW;            break;        }    }}

向枚举中添加新方法

public enum Color {    RED("红色", 1), GREEN("绿色", 2), BLANK("白色", 3), YELLO("黄色", 4);    // 成员变量    private String name;    private int index;    // 构造方法    private Color(String name, int index) {        this.name = name;        this.index = index;    }    // 普通方法    public static String getName(int index) {        for (Color c : Color.values()) {            if (c.getIndex() == index) {                return c.name;            }        }        return null;    }    // get set 方法    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    public int getIndex() {        return index;    }    public void setIndex(int index) {        this.index = index;    }}

覆盖枚举的方法

public enum Color {    RED("红色", 1), GREEN("绿色", 2), BLANK("白色", 3), YELLO("黄色", 4);    // 成员变量    private String name;    private int index;    // 构造方法    private Color(String name, int index) {        this.name = name;        this.index = index;    }    //覆盖方法    @Override    public String toString() {        return this.index+"_"+this.name;    }}

实现接口

public interface Behaviour {    void print();    String getInfo();}public enum Color implements Behaviour{    RED("红色", 1), GREEN("绿色", 2), BLANK("白色", 3), YELLO("黄色", 4);    // 成员变量    private String name;    private int index;    // 构造方法    private Color(String name, int index) {        this.name = name;        this.index = index;    }//接口方法    @Override    public String getInfo() {        return this.name;    }    //接口方法    @Override    public void print() {        System.out.println(this.index+":"+this.name);    }}

使用接口组织枚举

public interface Food {    enum Coffee implements Food{        BLACK_COFFEE,DECAF_COFFEE,LATTE,CAPPUCCINO    }    enum Dessert implements Food{        FRUIT, CAKE, GELATO    }}

转载地址:http://ttqli.baihongyu.com/

你可能感兴趣的文章
Linux下安装anaconda
查看>>
windows Anaconda lightgbm 安装
查看>>
Linux 系统下查看硬件信息命令大全
查看>>
python中的ord函数
查看>>
大小端
查看>>
Python struct模块的pack、unpack示例
查看>>
如何判断Linux是32位还是64位?
查看>>
12306火车票抢票Python代码
查看>>
Pandas 获取列名
查看>>
Hyperopt TypeError: 'generator' object is not subscriptable
查看>>
numpy 一维数组的切片与索引
查看>>
numpy 矩阵形状调整:拉伸、变成一位数组
查看>>
numpy 数组叠加
查看>>
numpy 花式索引,ix_
查看>>
python numpy 数组如何对每个元素进行操作
查看>>
numpy sorted对字典进行排列
查看>>
matplotlib 制作原始数据的散点图
查看>>
python 列举文件夹下面的文件
查看>>
python append和entend的区别
查看>>
python 引用传值、赋值
查看>>