public enum Dictionary {
PLACEHOLDER1 ("To be updated...", "Placeholder", "adjective"),
PLACEHOLDER2 ("To be updated...", "Placeholder", "adverb"),
PLACEHOLDER3 ("To be updated...", "Placeholder", "conjunction");
private String definition;
private String name;
private String partOfSpeech;
private Dictionary (String definition, String name, String partOfSpeech) {
this.definition = definition;
this.name = name;
this.partOfSpeech = partOfSpeech;
}
public String getName() {
return name;
}
public class DictionaryUser {
public static Dictionary getIfPresent(String name) {
return Enums.getIfPresent(Dictionary.class, name).orNull();
}
*public static Dictionary getIfPresent(String name) {
return Enums.getIfPresent(Dictionary.class, name.getName()).orNull();
}
Я только недавно натолкнулся на getIfPresent (), чтобы в основном использовать глобальную статическую карту с именем класса Enum для поиска.Вместо этого у меня есть проблема, я хотел бы использовать свой getter getName () для поиска вместо имени Enum name.В приведенном мною примере, если пользователь введет заполнитель, появятся все три значения.Это достижимо с моим подходом?Я поставил * рядом с моим подходом, который не работает.