我在 Java 中有一个对象,我试图从具有以下结构的枚举类中设置它。
public enum Code {
CODE_A,
CODE_B,
CODE_C,
CODE_D,
CODE_E,
CODE_F,
EMPTY("")
}
想要将我的对象设置为空字符串值。 IE。 Object.setCode(Code.EMPTY)
当我查看我的对象时,它应该有 "" 而不是 EMPTY 作为属性代码的值。
有人可以建议我可以使用什么解决方法吗?我不想修改如下所示的 Object.setCode setter:
public void setCode(Code code) {
this.code = code;
}
还有一个问题是 Object.setCode(必须是对象代码类型)
最佳答案
您可以简单地为每个枚举分配一个值并覆盖 toString() 方法,以便调用 Code.EMPTY 返回值“”而不是“EMPTY”
enum Code{
CODE_A("STRING_A"),
CODE_B("STRING_B"),
EMPTY("");
// Assigning a value to each enum
private final String code;
Code(String code){
this.code = code;
}
// Overriding toString() method to return "" instead of "EMPTY"
@Override
public String toString(){
return this.code;
}
}
因此运行 Code.CODE_A 将返回“STRING_A”
并运行 Code.EMPTY 将返回 ""
关于java - 在 Java 中为枚举值设置空字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40168744/