如何创建没有实例变量的枚举类?

Dan*_*nzz 2 java enums

我有一个带有枚举列表的类,枚举被传递给构造函数并更新到 toString,但我不允许在类上有实例变量(要求的一部分)。如何在不添加实例的情况下使枚举输出像 String 一样?

public enum Other {

    GAME_BOY("Game Boy"), MACBOOK("Macbook Pro"), IPHONE("iPhone XS"), LAPTOP("Laptop");

    private final String product; //can't have instance variable

    private Other(String passed) {
        this.product = passed;
    }

    @Override
    public String toString() {
        return product;
    }
}
Run Code Online (Sandbox Code Playgroud)

Lou*_*man 5

您可以覆盖toString()每个元素:

public enum Other {
   GAME_BOY {
     @Override public String toString() { return "Game Boy"; }
   },
   MACBOOK { ... },
   ...
}
Run Code Online (Sandbox Code Playgroud)

查看此代码在 IdeOne.com 上实时运行