java - 如何确定 java 中枚举的最低/最高索引?

标签 java enums

假设代码中某处有枚举声明:

enum Colors { RED(100), BLUE(200); }

假设我不知道该声明,我能否获得该特定枚举类型的最低/最高索引值?在 Java 中可以吗?

例子:

int lowIndex = Colors.minIndex(); // should return 100

谢谢大家。所以没有隐式方法来查询最小/最大定义的整数值。我将不得不遍历枚举值并按照您的描述从那里确定它。

最佳答案

您必须遍历枚举集:

for (Color p : Color.values()) {
    // keep track of min "index"
}

请记住,枚举本质上是预定义对象实例的集合。 RED(100) 正在调用 Color(int value) 构造函数。也就是说,我可以制作一个颜色枚举,其值定义如下:

RED("best", 14, 3.33546)

因此,寻找最小“索引”的逻辑将因情况而异。

关于java - 如何确定 java 中枚举的最低/最高索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23926329/

相关文章:

java - 具有数组/列表值的枚举

java - 如何从字节中获取枚举

java - 如何将捕获的图像放入应用程序并上传到服务器?

java - Android 应用程序在尝试从 Helper 类调用方法时获取 NullPointerException

java - 从内部 jar 加载脚本文件

类方法 : partial specialization if parameter is enum 上的 C++ 类型特征

node.js - 从已经定义的模型中获取 Sequelize.js ENUM 值

c# - (c++/cli) C++ 使用 C# dll 获取任何枚举成员名称

java - Google 登录不会更改 Activity

java - 我如何从无线和网络列表中删除 "Bluetooth "(Android Gingerbread)