首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >带空格的Java枚举元素?

带空格的Java枚举元素?
EN

Stack Overflow用户
提问于 2011-12-06 01:16:39
回答 6查看 47.5K关注 0票数 32

我正在使用java,我创建了一个枚举,如下所示:

代码语言:javascript
复制
public enum myEnum
{
    india,
    russian,
    england,
    north America
}

上面的例子给出了在元素名称中使用空格时的错误(例如北美)。如何解决上述问题有什么建议吗?

EN

回答 6

Stack Overflow用户

发布于 2011-12-06 01:33:29

我将继续并猜测为什么在名称中需要一个空格;因为您希望将其作为字符串引用。

所以要这样做:

代码语言:javascript
复制
public enum MyEnum {
    INDIA("India"),
    RUSSIAN("Russian"),
    ENGLAND("England"),
    NORTH_AMERICA("North America");    

    private String name;

    MyEnum(String name) {
        this.name = name;
    }

    public String getName() {
        return this.name;
    }    
}

你可以考虑重写字符串。

代码语言:javascript
复制
public toString() {
    return name;
}

覆盖toString()的一个优点是,该字符串也可以在MyEnum .valueOf(myString)中使用。因此,覆盖toString基本上会创建枚举值的HashMap。

票数 18
EN

Stack Overflow用户

发布于 2011-12-06 01:19:42

问题与枚举无关(特别是):在Java中,名称不能包含空格。尝试消除空格(使用大写来区分位)或使用下划线。

票数 5
EN

Stack Overflow用户

发布于 2011-12-06 01:17:43

northAmerica一样将它们写在一起,或者使用下划线north_America

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8389150

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档