Здесь упоминалось несколько библиотек, но я скучаю по той, которую я действительно искал: Spring!
Существует ObjectUtils # содержитConstant , который по умолчанию не учитывает регистр, но может быть строгим, если хотите. Используется так:
if(ObjectUtils.containsConstant(Choices.values(), "SOME_CHOISE", true)){
// do stuff
}
Примечание: здесь я использовал перегруженный метод, чтобы продемонстрировать, как использовать проверку с учетом регистра. Вы можете опустить логическое значение, чтобы поведение не чувствительно к регистру.
Будьте осторожны с большими перечислениями, поскольку они не используют реализацию Map, как это делают некоторые ...
В качестве бонуса также предоставляется вариант значения без учета регистра: ObjectUtils # caseInsensitiveValueOf