首页 >Java >java教程 >如何在 Java 中用零向左填充字符串?

如何在 Java 中用零向左填充字符串?

Barbara Streisand
Barbara Streisand原创
2024-11-25 12:23:14426浏览

How to Left-Pad a String with Zeros in Java?

在 Java 中用零填充字符串

过去已经讨论过类似的查询,但对于该技术仍然存在一些模糊性向左用零填充字符串。具体来说,我们的目标是实现以下转换:

输入:“129018”
输出:“0000129018”

最终输出应恰好包含十个字符。

数字字符串

对于只包含数字字符的字符串,一个简单的方法是将字符串转换为整数,然后使用 String.format 方法应用左填充:

String input = "129018";
int number = Integer.parseInt(input);
String padded = String.format("%010d", number);

非数字字符串

对于非数字字符串,替代方法是必需:

字符串连接

您可以将所需数量的零连接到字符串的开头:

String input = "abc";
StringBuilder padded = new StringBuilder();
int paddingLength = 10 - input.length();
for (int i = 0; i < paddingLength; i++) {
    padded.append('0');
}
padded.append(input);

子字符串替换

可以在下面替换合适长度的子串字符串以零开头:

String input = "abc";
String padded = String.format("%10s", input).replaceFirst(" ", "0");

StringBuilder 转换

您可以从现有字符串创建 StringBuilder 并在开头插入零:

String input = "abc";
StringBuilder padded = new StringBuilder(input);
for (int i = 0; i < 10 - input.length(); i++) {
    padded.insert(0, '0');
}

以上是如何在 Java 中用零向左填充字符串?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn