Java 如何为枚举的每个条目添加描述?

Java 如何为枚举的每个条目添加描述?,java,enums,Java,Enums,鉴于以下情况: enum Moving {DownRight , UpRight ,DownLeft ,UpLeft ,Up , Down ,Left ,Right}; Moving m_moving; 如果我这样做,例如: m_moving = Moving.DownRight; 及 然后我会得到: DownRight 那么,如何为枚举中的每个条目添加描述 例如,如果我执行m_moving.toString()然后我想展示FOO-BAR 谢谢看看我们应用程序中的代码 public en

鉴于以下情况:

enum Moving {DownRight , UpRight ,DownLeft ,UpLeft ,Up , Down ,Left ,Right};

Moving m_moving;
如果我这样做,例如:

m_moving = Moving.DownRight;

然后我会得到:

DownRight
那么,如何为枚举中的每个条目添加描述

例如,如果我执行
m_moving.toString()然后我想展示
FOO-BAR


谢谢

看看我们应用程序中的代码

public enum RegimeTributario {
    SIMPLES_NACIONAL("SI"), 
    LUCRO_PRESUMIDO("LP"), 
    LUCRO_REAL("LR");

    private String sigla;

    private RegimeTributario(String sigla) {
        this.sigla = sigla;
    }

    public String getSigla() {
        return sigla;
    }
}
Enum也接受字段

在下面的帖子中,这里是我的最终答案(也非常感谢@Luiz E.):


或者看看这个。枚举可以像任何其他类一样具有字段和构造函数。顺便说一下,我建议您按顺时针方向排列方向,例如e/se/s/sw/w/nw/n/ne。这为您提供了一个很好的属性,如果您获取一个枚举值,在其中添加4,并获取它的%8,那么您将得到相反的方向。加上其他有用的相关属性。这也是一篇很棒的帖子:
public enum RegimeTributario {
    SIMPLES_NACIONAL("SI"), 
    LUCRO_PRESUMIDO("LP"), 
    LUCRO_REAL("LR");

    private String sigla;

    private RegimeTributario(String sigla) {
        this.sigla = sigla;
    }

    public String getSigla() {
        return sigla;
    }
}
enum DirectionsEnum {

    North("North"),
    NorthEast("North East"),
    East("East"),
    SouthEast("South East"),
    South("South"),
    SouthWest("South West"),
    West("West"),
    NorthWest("North West");

    private String value;

    DirectionsEnum(String value) {
        this.value = value;
    }

    public String getValue() {
        return value;
    }

    @Override
    public String toString() {
        return this.getValue();
    }

    public static DirectionsEnum getEnum(String value) {
        if(value == null)
            throw new IllegalArgumentException();
        for(DirectionsEnum v : values())
            if(value.equalsIgnoreCase(v.getValue())) return v;
        throw new IllegalArgumentException();
    }
}