String.format是干嘛得到
时间: 2023-11-16 10:56:11 浏览: 135
String.format()是Java中String类提供的一个方法,它可以将指定的字符串格式化为一个新的字符串并返回。它的主要作用是将一些变量或者数据以指定的格式插入到字符串中,生成一个新的字符串。这个方法可以接受多个参数,其中第一个参数是格式化字符串,后面的参数是需要插入到格式化字符串中的变量或者数据。在格式化字符串中,可以使用占位符来指定需要插入的变量或者数据的类型和格式。常用的占位符包括%s、%d、%f等,分别表示字符串、整数、浮点数等类型。
相关问题
MessageFormat.format和String.format的区别
`String.format`和`MessageFormat.format`都是用于格式化字符串的方法,它们的主要区别在于:
1. 参数个数不同:`String.format`只接收一个格式化字符串和多个参数,而`MessageFormat.format`接收一个格式化字符串和一个数组作为参数。
2. 格式化字符串的语法不同:`String.format`使用了C语言风格的格式化字符串,如`%s`、`%d`等,而`MessageFormat.format`则使用了Java风格的格式化字符串,如`{0}`、`{1,number,currency}`等。
3. 功能不同:`MessageFormat.format`支持多语言(国际化)的格式化,可以根据不同的语言环境进行格式化,而`String.format`则不支持。
综上所述,如果只需要简单的字符串格式化,可以使用`String.format`,而如果需要支持多语言的字符串格式化,则应该使用`MessageFormat.format`。
优化以下代码: if (adminCreateVO.getRoleId() == null){ if (StringUtils.isNotBlank(info)){ return String.format(SalaryGlobalConstants.PERMISSION_SETTINGS_PERMISSION_ADD, userName) + SalaryGlobalConstants.PERMISSION_MANAGE_PAYROLL_GROUPS_ADD + info; } return String.format(SalaryGlobalConstants.PERMISSION_SETTINGS_PERMISSION_ADD, userName); }else{ if (StringUtils.isNotBlank(info)){ return String.format(SalaryGlobalConstants.PERMISSION_SETTINGS_PERMISSION_UPDATE, userName) + SalaryGlobalConstants.PERMISSION_SETTINGS_PERMISSION_REVISE + info; } return String.format(SalaryGlobalConstants.PERMISSION_SETTINGS_PERMISSION_UPDATE, userName); }
可以使用三元运算符来简化代码。以下是优化后的代码:
String permission;
if (adminCreateVO.getRoleId() == null) {
permission = StringUtils.isNotBlank(info) ? String.format(SalaryGlobalConstants.PERMISSION_SETTINGS_PERMISSION_ADD, userName) + SalaryGlobalConstants.PERMISSION_MANAGE_PAYROLL_GROUPS_ADD + info : String.format(SalaryGlobalConstants.PERMISSION_SETTINGS_PERMISSION_ADD, userName);
} else {
permission = StringUtils.isNotBlank(info) ? String.format(SalaryGlobalConstants.PERMISSION_SETTINGS_PERMISSION_UPDATE, userName) + SalaryGlobalConstants.PERMISSION_SETTINGS_PERMISSION_REVISE + info : String.format(SalaryGlobalConstants.PERMISSION_SETTINGS_PERMISSION_UPDATE, userName);
}
return permission;
阅读全文