【发布时间】:2014-08-20 09:16:49
【问题描述】:
是否可以在不重复循环的情况下遍历任何枚举?
假设我有两个枚举。
public enum Type {
X("x type"),
Y("y type"),
Z("z type"),
private String text;
private Type(String text) {
this.text = text;
}
@Override
public String toString() {
return text;
}
}
public enum Size {
SMALL("tiny"),
MED("mid"), ...
private String text;
private Size(String text) {
this.text = text;
}
@Override
public String toString() {
return text;
}
}
我可以像这样遍历单个枚举:
for (Type type : Type.values()) {
... do something with type.name(), type.toString()
}
for (Size s : Size.values()) {
... do "the same" something with s.name(), S.toString()
}
是否可以在不复制每种枚举类型的代码的情况下循环遍历它们?避免Java中整个循环重复的最佳方法是什么?
【问题讨论】: