Java具有属性(字段)的枚举

示例

如果我们想使用enum更多的信息,而不仅仅是常量值,并且我们希望能够比较两个枚举。

考虑以下示例:

public enum Coin {
    PENNY(1), NICKEL(5), DIME(10), QUARTER(25);

    private final int value;

    Coin(int value){
       this.value= value;
    }

    public boolean isGreaterThan(Coin other){
        returnthis.value> other.value;
    }

}

在这里,我们定义了一个Enum被叫Coin代表其值。使用该方法,isGreaterThan我们可以比较两个enums:

Coin penny = Coin.PENNY;
Coin dime = Coin.DIME;

System.out.println(penny.isGreaterThan(dime)); // 打印:假
System.out.println(dime.isGreaterThan(penny)); // 打印:真实