Java中具有int值的枚举

什么是C#的Java等价物:

enum Foo

{

Bar = 0,

Baz = 1,

Fii = 10,

}

回答:

如果需要属性,则enum需要这样定义:

public enum Foo {

BAR (0),

BAZ (1),

FII (10);

private final int index;

Foo(int index) {

this.index = index;

}

public int index() {

return index;

}

}

您可以这样使用它:

public static void main(String[] args) {

for (Foo f : Foo.values()) {

System.out.printf("%s has index %d%n", f, f.index());

}

}

要意识到的是,这enum只是创建类的捷径,因此您可以向该类添加所需的任何属性和方法。

如果您不想在自己的方法上定义任何方法,则enum可以更改成员变量的范围并进行设置public,但这不是它们在Sun网站上的示例中所做的。

以上是 Java中具有int值的枚举 的全部内容, 来源链接: utcz.com/qa/419590.html

回到顶部