Files
TabooLib/src/main/java/com/ilummc/tlib/util/Strings.java
Izzel_Aliz c573617a01 船新 I18n 系统
修了一个配置文件小bug
2018-04-22 13:30:50 +08:00

29 lines
1003 B
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.ilummc.tlib.util;
public class Strings {
/**
* 优化过的 String#replace比默认快了大概 5 倍
*
* @param template 模板替换文件
* @param args 替换的参数
* @return 替换好的字符串
*/
public static String replaceWithOrder(String template, String... args) {
if (args.length == 0) return template;
char[] arr = template.toCharArray();
StringBuilder stringBuilder = new StringBuilder(template.length());
for (int i = 0; i < arr.length; i++) {
if (arr[i] == '{' && Character.isDigit(arr[Math.min(i + 1, arr.length - 1)])
&& arr[Math.min(i + 1, arr.length - 1)] - '0' < args.length
&& arr[Math.min(i + 2, arr.length - 1)] == '}') {
stringBuilder.append(args[arr[i + 1] - '0']);
i += 2;
} else
stringBuilder.append(arr[i]);
}
return stringBuilder.toString();
}
}