我试图弄清楚如何在Java中使用枚举,但我不知道如何做到这一点:
public enum animalSounds {
CAT("meow"),
DOG("Woof"),
PIG("Oink"),
public final String animalName;
animalSounds(String noise) {
this.animalName = noise
}
}
我正在尝试做的是传递一个字符串,然后查看该字符串是否存在于可枚举集中。因此,我将传递“ Oink”并返回PIG,但是如果传递“ Chirp”,则会出现某种错误,因为“ Chirp”没有枚举值。
最佳答案
枚举不是您要尝试做的最好的事情,但是您可以尝试
private animalSounds getAnimal(String noise) {
for(animalSounds a : animalSounds.values())
{
if(a.animalName.equals(noise))
{
return a;
}
}
throw new IllegalArgumentException();
}