枚举的java泛型类,值的数目
如何在本例中找出我的枚举有多少个值:
public class Analyser<C extends Enum<C>>{
private long[] dist;
public Analyser() {
super();
dist = new long [C.getEnumConstants().length];
}
}
最后一行行不通
你可以在下面搜索框中键入要查询的问题!
如何在本例中找出我的枚举有多少个值:
public class Analyser<C extends Enum<C>>{
private long[] dist;
public Analyser() {
super();
dist = new long [C.getEnumConstants().length];
}
}
最后一行行不通
# 1 楼答案
您需要传入枚举的类文本:
这是因为
C
在运行时由于type erasure而没有意义# 2 楼答案
我想最后一行无法编译。您需要
Class
实例来执行此操作。以下是您的代码的修改版本:然而,我无法确切理解为什么要从
Enum
扩展类。如果您在开发时知道enum类,您可以说MyEnum.values().length
如果要编写检查任何枚举有多少个值的通用代码,只需编写一个实用程序方法,如: