gpt4 book ai didi

Java:枚举的等价类

转载 作者:行者123 更新时间:2023-12-01 06:51:02 26 4
gpt4 key购买 nike

如果有一个枚举,

public enum Animal {
DOG,
CAT;
}

如果我正确理解枚举,我们可以将它们转换为等效的类,例如 -

public class Animal {
private static final DOG = 1;
private static final CAT = 2;
}

这是正确的表示,还是我在这里遗漏了任何内容?

谢谢。

最佳答案

不完全是。其外观如下:

public class Animal extends Enum<Enum<Animal>> {
public static final DOG = new Animal("DOG", 0);
public static final CAT = new Animal("CAT", 1);
private static final Animal[] values = new Animal[] {DOG, CAT};

private Animal(String name, int ordinal) {super(name, ordinal);}
public static Animal valueOf(String name) {return Enum.valueOf(Animal.class, name)}
public Animal[] values() {return values;}
}

java.lang.Enum 包含ordinalname 并提供可以访问它们的方法。

关于Java:枚举的等价类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29139633/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com