java - 如何检查枚举通用java android中是否存在值(int)
问题描述
检查枚举常量Java示例中是否存在整数值
enum Days{
SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY;
}
checkFunction(Days, 5) // true
checkFunction(Days, -1) // false
checkFunction(Days, 10) // false
解决方案
public static <T extends Enum<T>> boolean isEnumContainsInt(Class<T> et, int v)
{
if (et == null) {
return false;
}
T[] values = et.getEnumConstants();
if (values == null) {
return false;
}
for (int i = values.length - 1; i >= 0; --i) {
T value = values[i];
if(v== value.ordinal())
return true;
}
return false;
}
推荐阅读
- sql-server - 用户定义类型的 SQL Server 2016 列
- c# - 如何在鼠标位置发射子弹
- java - 用于女性语音中文本到语音的 Java 代码
- java - 路由前如何在 Play 1.2.x 中调用 servlet 过滤器
- c++ - 如何使用 C++ 在 Ubuntu 上强制用户注销?
- python - 我的热图在 Pandas 中看起来不正确
- python - 使用 matplotlib animate 和 patch 为正方形和箭头设置动画
- javascript - next.config.js 中的 publicRuntimeConfig 在 prod/staging 中始终未定义
- python - Selenium Webdriver 找不到点击按钮的元素
- typescript - 如何在打字稿中将对象数组转换为uri编码的查询字符串