试图了解java枚举的工作原理
我编写了以下Java类,它基于GoogleWebToolkit源代码的SAMPLES文件夹中的EXPENSES应用程序。代码如下 我的目标是理解java枚举是如何工作的,我认为这可能是一个很好的起点。我在网上查阅了有关Enum的资料,了解了基本概念。然而,我仍然在努力理解这段代码 这是我的代码:试图了解java枚举的工作原理,java,Java,我编写了以下Java类,它基于GoogleWebToolkit源代码的SAMPLES文件夹中的EXPENSES应用程序。代码如下 我的目标是理解java枚举是如何工作的,我认为这可能是一个很好的起点。我在网上查阅了有关Enum的资料,了解了基本概念。然而,我仍然在努力理解这段代码 这是我的代码: public class Expenses { public static enum Approval { BLANK("", APPROVED("Approved"),DEN
public class Expenses {
public static enum Approval {
BLANK("", APPROVED("Approved"),DENIED("Denied"));
/**
* Get the {@link Approval} from the specified string.
*
* @param approval the approval string
* @return the {@link Approval}
*/
public static Approval from(String approval) {
if (APPROVED.is(approval)) {
return APPROVED;
} else if (DENIED.is(approval)) {
return DENIED;
}
return BLANK;
}
private final String text;
private Approval(String text) {
this.text = text;
}
public String getText() {
return text;
}
public boolean is(String compare) {
return text.equals(compare);
}
}
public static final String[] DEPARTMENTS = {
"Engineering", "Finance", "Marketing", "Operations", "Sales"};
}
Eclipse抱怨批准和拒绝
类型的拒绝方法(字符串)未定义
费用.批准
-未为类型定义已批准的方法(字符串)
费用.批准
什么是空白(…)的东西?它是某种数据结构吗?
这是怎么回事
我所要寻找的只是一种理解这段代码的方法,并在尝试进一步研究这段代码之前消除编译错误。这是一个括号问题。添加换行符以增加可读性
BLANK(""),
APPROVED("Approved"),
DENIED("Denied");
检查括号。这是一个更好的枚举教程:。花点时间阅读教程,不要盲目地复制代码。谢谢。是括号。