java补充0 java数字左侧补零补0 NumberFormat实现数字左侧补0
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java补充0 java数字左侧补零补0 NumberFormat实现数字左侧补0,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1956字,纯文字阅读大概需要3分钟。
内容图文
![java补充0 java数字左侧补零补0 NumberFormat实现数字左侧补0](/upload/InfoBanner/zyjiaocheng/755/817ce7ae014d4836ae99ce294d011d7e.jpg)
java补充0 java数字左侧补零补0 NumberFormat实现数字左侧补0
一、提出需求
1、在做一个编号生成规则中,有个规则如下: 编码序号为 5 位数,不足部分左侧补0。
二、代码实现
1、使用 java.text.NumberFormat 实现
/**
* description: 格式化数字,实现左侧补 0.
* @param num 格式化的数字
* @param min 最小位数
* @param max 最大位数
* @return String
* @version v1.0
* @author w
* @date 2019年7月19日 下午2:08:31
*/
public String fill(int num , int min , int max) {
NumberFormat numberFormat = NumberFormat.getInstance();
// 禁用数字格式化分组。 如: 000,001
numberFormat.setGroupingUsed(false);
// 保留最小位数
numberFormat.setMinimumIntegerDigits(min);
// 保留最大位数
numberFormat.setMaximumIntegerDigits(max);
return numberFormat.format(num);
}
2、使用 String.format 实现
/**
* description: 使用 String.format 格式化数字,实现左侧补 0
* @param num 需要格式化的数字
* @param digit 生成字符串长度(保留数字位数)
* @return String
* @version v1.0
* @author w
* @date 2019年7月19日 下午2:14:31
*/
public String fillString(int num , int digit) {
/**
* 0:表示前面补0
* digit:表示保留数字位数
* d:表示参数为正数类型
*/
return String.format("%0"+digit+"d", num);
}
三、测试
1、 测试 NumberFormat 实现 左侧补 0
@Test
public void testOne() {
/**
* 需求: 编码序号为 5 位数,不足部分左侧补 0
* 即: max = min =5
*/
String fill = fill(2, 5, 5);
System.out.println(fill);
fill = fill(233, 5, 5);
System.out.println(fill);
}
2、结果如下:
00002
00233
符合条件,达到预期结果!
3、 测试 String.format 实现左侧补0
@Test
public void testTwo() {
String fillString = fillString(1 , 5);
System.out.println(fillString);
fillString = fillString(110 , 5);
System.out.println(fillString);
}
4、结果如下:
00001
00110
符合条件,达到预期结果!
四、总结
1、NumberFormat 可以实现数字补0,同时支持设置 最大、最小位数,对数字处理更灵活。
2、String.format 可以实现数字补0,但不仅仅限于补0,也可以填充其他的数字、或者字符,对字符处理更灵活。
3、只要能实现需求就好,不必纠结那个好!
参考资料: String.format()用法
内容总结
以上是互联网集市为您收集整理的java补充0 java数字左侧补零补0 NumberFormat实现数字左侧补0全部内容,希望文章能够帮你解决java补充0 java数字左侧补零补0 NumberFormat实现数字左侧补0所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。