diff --git a/sa-token-core/src/main/java/cn/dev33/satoken/util/StrFormatter.java b/sa-token-core/src/main/java/cn/dev33/satoken/util/StrFormatter.java
index 5b855766..c5684b73 100644
--- a/sa-token-core/src/main/java/cn/dev33/satoken/util/StrFormatter.java
+++ b/sa-token-core/src/main/java/cn/dev33/satoken/util/StrFormatter.java
@@ -28,12 +28,34 @@ package cn.dev33.satoken.util;
public class StrFormatter {
/**
- * 占位符
+ * 占位符(保留原有 public 访问权限,避免破坏外部依赖)
+ * @deprecated 语义不明确,建议内部使用 {@link #DEFAULT_PLACEHOLDER} 替代
*/
+ @Deprecated
public static String EMPTY_JSON = "{}";
-
+
+ /**
+ * 反斜杠转义字符(保留原有 public 访问权限,避免破坏外部依赖)
+ * @deprecated 命名不规范,建议内部使用 {@link #BACKSLASH_CHAR} 替代
+ */
+ @Deprecated
public static char C_BACKSLASH = '\\';
-
+
+ /**
+ * 新增内部规范常量(private,仅内部使用)
+ * 默认占位符 */
+ private static final String DEFAULT_PLACEHOLDER = "{}";
+
+ /**
+ * 反斜杠转义字符
+ * */
+ private static final char BACKSLASH_CHAR = '\\';
+
+ /**
+ * 字符串构建器初始扩容长度
+ * */
+ private static final int BUFFER_INIT_CAPACITY = 50;
+
/**
* 格式化字符串
* 此方法只是简单将占位符 {} 按照顺序替换为参数
@@ -45,10 +67,10 @@ public class StrFormatter {
*
* @param strPattern 字符串模板
* @param argArray 参数列表
- * @return 结果
+ * @return 格式化后的结果
*/
public static String format(String strPattern, Object... argArray) {
- return formatWith(strPattern, EMPTY_JSON, argArray);
+ return formatWith(strPattern, DEFAULT_PLACEHOLDER, argArray);
}
/**
@@ -63,7 +85,7 @@ public class StrFormatter {
* @param strPattern 字符串模板
* @param placeHolder 占位符,例如{}
* @param argArray 参数列表
- * @return 结果
+ * @return 格式化后的结果
* @since 1.33.0
*/
public static String formatWith(String strPattern, String placeHolder, Object... argArray) {
@@ -74,7 +96,7 @@ public class StrFormatter {
final int placeHolderLength = placeHolder.length();
// 初始化定义好的长度以获得更好的性能
- final StringBuilder sbu = new StringBuilder(strPatternLength + 50);
+ final StringBuilder sbu = new StringBuilder(strPatternLength + BUFFER_INIT_CAPACITY);
int handledPosition = 0;// 记录已经处理到的位置
int delimIndex;// 占位符所在位置
@@ -90,8 +112,8 @@ public class StrFormatter {
}
// 转义符
- if (delimIndex > 0 && strPattern.charAt(delimIndex - 1) == C_BACKSLASH) {// 转义符
- if (delimIndex > 1 && strPattern.charAt(delimIndex - 2) == C_BACKSLASH) {// 双转义符
+ if (delimIndex > 0 && strPattern.charAt(delimIndex - 1) == BACKSLASH_CHAR) {// 转义符
+ if (delimIndex > 1 && strPattern.charAt(delimIndex - 2) == BACKSLASH_CHAR) {// 双转义符
// 转义符之前还有一个转义符,占位符依旧有效
sbu.append(strPattern, handledPosition, delimIndex - 1);
sbu.append(argArray[argIndex]);
@@ -116,4 +138,4 @@ public class StrFormatter {
return sbu.toString();
}
-}
+}
\ No newline at end of file