精华内容
下载资源
问答
  • java补充0 java数字左侧补零补0 NumberFormat实现数字左侧补0一、提出需求1、在做一个编号生成规则中,有个规则如下: 编码序号为 5 位数,不足部分左侧补0。二、代码实现1、使用 java.text.NumberFormat 实现/*** ...

    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、只要能实现需求就好,不必纠结那个好!

    标签:java,String,NumberFormat,format,fillString,位数,左侧,数字

    来源: https://blog.csdn.net/HaHa_Sir/article/details/96481441

    展开全文
  • } } 方法二:用java中的DecimalFormat()方法 private static final String STR_FORMAT = "0000"; public static String test(String liuShuiHao){ Integer intHao = Integer.parseInt(liuShuiHao); intHao++; ...

    方法一:String.format()方法

    仅做参考,如有其他方法,欢迎留言交流.

    public class TestStringFormat {

    public static void main(String[] args) {

    int youNumber = 1;

    // 0 代表前面补充0

    // 4 代表长度为4

    // d 代表参数为正数型

    String str = String.format("%04d", youNumber);

    System.out.println(str);

    }

    }

    方法二:用java中的DecimalFormat()方法

    private static final String STR_FORMAT = "0000";

    public static String test(String liuShuiHao){

    Integer intHao = Integer.parseInt(liuShuiHao);

    intHao++;

    DecimalFormat df = new DecimalFormat(STR_FORMAT);

    return df.format(intHao);

    }

    分享到:

    2010-09-28 18:20

    浏览 32067

    评论

    3 楼

    107x

    2016-09-09

    不错,谢谢!

    2 楼

    g_man1990

    2014-09-08

    'd'整数结果被格式化为十进制整数

    1 楼

    cl1154781231

    2011-09-22

    第一种方法好!

    展开全文
  • Java 中给数字左边补0方法

    千次阅读 2018-03-29 15:52:41
    Java 中给数字左边补0(1)方法一import java.text.NumberFormat;public class NumberFormatTest { public static void main(String[] args) { //待测试数据 int i = 1; //得到一个NumberFormat的实例 Number.....

    Java 中给数字左边补0

    (1)方法一
    import java.text.NumberFormat;

    public class NumberFormatTest {

        public static void main(String[] args) {
            //待测试数据
            int i = 1;
            //得到一个NumberFormat的实例
            NumberFormat nf = NumberFormat.getInstance();
            //设置是否使用分组
            nf.setGroupingUsed(false);
            //设置最大整数位数
            nf.setMaximumIntegerDigits(4);
            //设置最小整数位数   
            nf.setMinimumIntegerDigits(4);
            //输出测试语句
            System.out.println(nf.format(i));
        }
    }

     


    来源:http://blog.csdn.net/xiaohunzhang/archive/2008/08/07/2782592.aspx

     

     

    (2)方法二(个人以为该方法简单有效,但经试验似乎String.format()函数有问题)

    1. public class TestStringFormat {      
    2.   public static void main(String[] args) {      
    3.     int youNumber = 1;      
    4.     // 0 代表前面补充0      
    5.     // 4 代表长度为4      
    6.     // d 代表参数为正数型      
    7.     String str = String.format("%04d", youNumber);      
    8.     System.out.println(str); // 0001      
    9.   }      
    10. }    
    展开全文
  • NumberFormat nf = NumberFormat.getInstance();//设置是否使用分组nf.setGroupingUsed(false);//设置最大整数位数nf....//可以左补齐两位数的数字//以下是查询当前天数的所有日期String nowDay=getNow...

    NumberFormat nf = NumberFormat.getInstance();

    //设置是否使用分组

    nf.setGroupingUsed(false);

    //设置最大整数位数

    nf.setMaximumIntegerDigits(2);

    nf.setMinimumIntegerDigits(2);

    //可以左补齐两位数的数字

    //以下是查询当前天数的所有日期

    String nowDay=getNowYMD();

    String curDayStr=nowDay.substring((nowDay.length()-2), nowDay.length());

    List list = new ArrayList();

    Calendar aCalendar = Calendar.getInstance(Locale.CHINA);

    int year = aCalendar.get(Calendar.YEAR);//年份

    int month = aCalendar.get(Calendar.MONTH) + 1;//月份

    //     int day = aCalendar.getActualMaximum(Calendar.DATE);

    int day=Integer.valueOf(curDayStr);

    for (int i = day; i >0; i--) {

    String aDate = String.valueOf(year)+"-"+nf.format(month)+"-"+nf.format(i);

    list.add(aDate);

    }

    return list;

    展开全文
  • ava 中给数字左边补0(1)方法一import java.text.NumberFormat;public class NumberFormatTest {public static void main(String[] args) {//待测试数据int i = 1;//得到一个NumberFormat的实例NumberFormat nf = ...
  • http://blog.csdn.net/yudaoai/article/details/4267899——————————————————————————————————————————————————————————Java 中给数字左边补0(1)方法一...
  • Java中利用NumberFormat 给数字左边补0

    千次阅读 2008-08-07 14:59:00
    Java 中给数字左边补0import java.text.NumberFormat;public class NumberFormatTest { public static void main(String[] args) { //待测试数据 int i = 1; //得到一个NumberFormat的实例 NumberForm
  • } } 方法二:用java中的DecimalFormat()方法 private static final String STR_FORMAT = "0000"; public static String test(String liuShuiHao){ Integer intHao = Integer.parseInt(liuShuiHao); intHao++; ...
  • 整理用Java实现数字转化成字符串左边自动补零方法Java 中给数字左边补0 (1)方法一import java.text.NumberFormat; public class NumberFormatTest { public static void main(String[] args) {//待测试数据int i = 1...
  • ava 中给数字左边补0(1)方法一import java.text.NumberFormat;public class NumberFormatTest {public static void main(String[] args) {//待测试数据int i = 1;//得到一个NumberFormat的实例NumberFormat nf = ...
  • Java 中给数字左边补0  (1)方法一  import java.text.NumberFormat;  public class NumberFormatTest {   public static void main(String[] args) {   //待测试数据   
  • (1)方法一 ...import java.text.NumberFormat; public class NumberFormatTest { public static void main(String[] args) { //待测试数据 int i = 1; //得到一个NumberFormat的实例 NumberFo...
  • Java 中给数字左边补0 (1)方法一 import java.text.NumberFormat; public class NumberFormatTest {  public static void main(String[] args) {  //待测试数据  int i = 1;  //得到一个Number...
  • 方法有很多,这里提供3个比较简单好用...import java.text.NumberFormat; /** * @Author: Lee * @Time: 2018/5/24 11:21 * @Description: 生成4位数,不够前面补0 */ public class NumberTest { @Test ...
  • 今年的蓝桥杯中我遇到了一道题是关于数字金字塔的,那时候在比赛时可能是各方面的因素有思路但是没有实现,直到今天回过头来看,其实只要思路正确了题目就会迎刃而解了,其实数字金字塔的的解题思路就是把金字塔分成...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 813
精华内容 325
关键字:

java数字左边

java 订阅