Java如何填充字符
填充字符方法
在Java中,可以使用String.format()或StringUtils(Apache Commons Lang库)来填充字符。以下是几种常见的方法:
使用String.format()
String padded = String.format("%10s", "hello").replace(' ', '*');
// 输出: "*hello"
%10s表示字符串总宽度为10,不足部分默认用空格填充,通过replace()将空格替换为指定字符。
使用StringUtils.leftPad() 需要引入Apache Commons Lang库:
String padded = StringUtils.leftPad("hello", 10, '*');
// 输出: "*hello"
参数依次为原始字符串、总长度、填充字符。
手动实现填充 若不想依赖外部库,可手动实现:
public static String padLeft(String input, int length, char padChar) {
if (input.length() >= length) return input;
StringBuilder sb = new StringBuilder();
for (int i = 0; i < length - input.length(); i++) {
sb.append(padChar);
}
return sb.append(input).toString();
}
右填充示例
右填充与左填充类似,调整字符串连接顺序即可:
String padded = String.format("%-10s", "hello").replace(' ', '*');
// 输出: "hello*"
%-10s中的负号表示右对齐。

注意事项
- 若原始字符串长度超过目标长度,方法会直接返回原字符串。
- 填充字符可以是任意Unicode字符,如
-、#等。 - 对于数字填充,建议先转换为字符串再处理。






