Java 调用枚举变量时设置其格式
调用枚举变量时,是否有任何方法格式化它们?我是说,如果我有下一个枚举:Java 调用枚举变量时设置其格式,java,enums,Java,Enums,调用枚举变量时,是否有任何方法格式化它们?我是说,如果我有下一个枚举: public enum Error{ IS_NULL("The variable {NAME_OF_VARIABLE} cannot be null.") } 所以,当我调用它时,我想用null变量替换{NAME_OF_VARIABLE}。例如:“变量{phone_number}为空。” 现在我使用下一个构造: enum Error{ IS_NULL("The variable {%s} cannot be
public enum Error{
IS_NULL("The variable {NAME_OF_VARIABLE} cannot be null.")
}
所以,当我调用它时,我想用null变量替换{NAME_OF_VARIABLE}。例如:“变量{phone_number}为空。”
现在我使用下一个构造:
enum Error{
IS_NULL("The variable {%s} cannot be null.")
public String errorMsg;
}
public String validatePhoneNumber(String phoneNumber){
if(phoneNumber == null){
return String.format(Error.IS_NULL.errorMsg, "phoneNumber")}
return "OK"}
}
}
它工作正常,但看起来有点凌乱
谢谢大家! 使用
可选
更简洁的方法可以是:
public String validatePhoneNumber(String phoneNumber) {
return Optional.ofNullable(phoneNumber)
.map(a -> String.format(Error.IS_NULL.getErrorMsg(), "phoneNumber"))
.orElse("OK");
}
首先,您的代码不会编译,您可以使用三元运算符检查
电话号码
是否为空
给定枚举:
enum Error {
IS_NULL("The variable {%s} cannot be null.");
public String errorMsg;
private Error(String errorMsg) {
this.errorMsg = errorMsg;
}
}
验证方法可以简化为
public static String validatePhoneNumber(String phoneNumber) {
return phoneNumber == null ? String.format(Error.IS_NULL.errorMsg, "phoneNumber") : "OK";
}
未“调用”变量。感谢您的更正!:那么正确的公式是什么D