如何在java中遍历枚举[重复]
Posted
技术标签:
【中文标题】如何在java中遍历枚举[重复]【英文标题】:How to iterate through enum in java [duplicate] 【发布时间】:2011-09-04 16:54:05 【问题描述】:我有一个用于各种操作的枚举,我想遍历枚举Operations
public enum Operations
create,update,delete,view,compare,login
我怎样才能做到这一点?
【问题讨论】:
迭代枚举的值很重要——不仅仅是方便。这样做可以防止将来在添加或删除值时失败。 【参考方案1】:for (Operations op : Operations.values())
...
【讨论】:
另外,当我尝试for (Operations op : Operations.values()) if(arr[0].equalsIgnoreCase(op.name())) op=Operations.valueOf(arr[0].toLowerCase()); log.info(arr[0].toString());
时,它似乎不起作用
@Abhishek Simon:这段代码应该做什么? arr[0]
是什么?你为什么要重新分配op
?
arr[0] 来自 parameterMap String[] arr=(String[])me.getValue();
我假设 op=Operations.valueOf(arr[0].toLowerCase())
表示它是当前选择的 operation
我想要做的是,如果 parameterMap 包含任何操作然后执行一组语句
@Abhishek Simon:分配是多余的:你已经在if
语句中检查arr[0]
是否等于当前op
的名称(忽略大小写),所以你有当前选定的操作 - 它是 op
。它怎么不工作?尝试打印语句以查看 arr[0]
实际包含的内容。以上是关于如何在java中遍历枚举[重复]的主要内容,如果未能解决你的问题,请参考以下文章