java - 如何创建一个没有实例变量的枚举类?
问题描述
我有一个带有枚举列表的类,枚举被传递给构造函数并更新为 toString,但我不允许在类上有实例变量(要求的一部分)。如何在不添加实例的情况下使枚举输出像字符串一样?
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;
}
}
解决方案
您可以覆盖toString()
每个元素:
public enum Other {
GAME_BOY {
@Override public String toString() { return "Game Boy"; }
},
MACBOOK { ... },
...
}
推荐阅读
- kubernetes - 无法在 Kubernetes Pod 上挂载 NFS
- javascript - 创建和修改元素时加载 JS 的问题
- javascript - 当新条件出现时,我想隐藏以前的 if else 条件。可能吗?
- swift - 分配后无法推断通用参数“T”
- domain-driven-design - 我应该在 Axon 中为事件/消息使用公共设置器吗?
- sql - where 子句中的多个 PK
- phpunit - Symfony 5 unittest 无法获取实体集合
- javascript - 如果达到一定数量的分数,如何让 show score 显示短信?
- javascript - 我正在尝试使用 JavaScript 文件进行调查,但在计算总分和百分比时遇到问题?
- java - 跨服务共享轴突查询