Java如何实现字符串补齐
目录
- Java实现字符串补齐
- 方法 1:使用String.format()
- 方法 2:使用DecimalFormat
- 方法 3:手动补 0(字符串拼接)
- 方法 4:使用StringUjavascripttils.leftPad()(Apache Commons Lang)
- 方法 5:使用 Java 11 + 的String.repeat()
- 总结
Java实现字符串补rhPMIAltW齐
方法 1:使用String.format()
推荐方式,简单高效:
String str = "123"; String paddedStr = String.format("%06d", Integer.parseInt(str)); System.out.println(paddedStr); // 输出:000123
说明:
%06d
表示将整数格式化为 6 位字符串,不足部分用 0 填充。- 适用场景:输入确定为纯数字字符串。
方法 2:使用DecimalFormat
适用于数字格式化需求:
import java.text.DecimalFormat; String str = "123"; int num = Integer.parseInt(str); DecimalFormat df = new DecimalFormat("000000"); String paddedStr = df.format(num); System.out.println(paddedStr); // 输出:000123
说明:
000000
表示固php定 6 位,不足补 0。- 优点:适用于需要频繁格式化数字的场景。
方法 3:手动补 0(字符串拼接)
灵活处理非数字字符串:
String str = "123"; while (str.length() < 6) { str = "0" + str; } System.out.println(str); // 输出:000123
说明:
- 适用场景:输入可能包含非数字字符,且需要统一补 0 处理。
方法 4:使用StringUtils.leftPad()(Apache Commons Lang)
需要引入依赖,但功能强大:
import org.apache.commons.lang3.StringUtils; String str = "123"; String paddedStr = StringUtils.leftPad(str, 6, '0'); System.out.println(paddedStr); // 输出:000123
依赖配置:
<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.12.0</version> </dependency>
优点:
- 自动处理
null
输入(返回null
)。 - 支持自定义填充字符(如
leftPad(str, 6, ' ')
补空格)。
方法 5:使用 Java 11 + 的String.repeat()
优雅的单行实现:
String str = "123"; String paddedStr = "0".repeat(Math.max(0, 6 - str.length())) + str; System.out.pr编程客栈intln(paddedStr); // 输出:000123
说明:
- 适用场景:Java 11 及以上版本,简洁高效。
总android结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。
精彩评论