1

我在java中有一个枚举类如下

public enum SMethod {

/**
 * LEAVE IN THIS ORDER
 */
A    (true, true, true,false),
B    (true, true, false,false),
C    (true, true, false,false),
D    (false, false, false)

} 

另一个类有以下方法

private String getSMethod(boolean isSds) {
    if (isClsSds)
        return "A";
    else 
        return "B";
}

目前此方法返回硬编码值但字符串。但我想使用 SMethod 枚举返回它。我已将其编写如下:

private SMethod getSMethod(boolean isSds) {
    if (isClsSds)
        return SMethod.A;
    else 
        return SMethod.B;
}

但我需要的是这个方法应该返回字符串。

4

3 回答 3

2

使用name()方法:

return SMethod.A.name();

获取String枚举对象的名称。

于 2013-04-22T07:42:26.087 回答
2
return SMethod.A.name(); will return string

name()方法

返回此枚举常量的名称,与其枚举声明中的声明完全相同。

于 2013-04-22T07:42:54.503 回答
1

有两种方法。

所以你可以使用

public String getName(SMethod enm)
{
    return enm.name();
    // or enm.toString();
}
于 2013-04-22T07:43:48.877 回答