我有一个枚举类型,如下所示:
public enum ServerTask {
HOOK_BEFORE_ALL_TASKS("Execute"),
COPY_MASTER_AND_SNAPSHOT_TO_HISTORY("Copy master db"),
PROCESS_CHECKIN_QUEUE("Process Check-In Queue"),
...
}
我有一个字符串(假设为string =“Execute”),我想根据枚举中与之匹配的字符串将其变成ServerTask枚举的实例。是否有比在要匹配的字符串和枚举中的每个项目之间进行相等性检查更好的方法?因为我的枚举相当大,所以这似乎需要很多if语句。
ServerTask.values()
时使用单个if语句即可 :) - NiziLHOOK_BEFORE_ALL_TASKS
)还是该参数的值("Execute"
)?如果是参数,则如果您提供getter代码或其名称(如果不是private
),这将有所帮助。 - Captain Man