java – PHP整数部分填充

我需要用0填充整数部分,整数部分必须至少为2个字符

str_pad( 2    ,2,"0",STR_PAD_LEFT);// 02 -> works
str_pad( 22   ,2,"0",STR_PAD_LEFT);// 22 -> works
str_pad( 222  ,2,"0",STR_PAD_LEFT);// 222-> works
str_pad( 2.   ,2,"0",STR_PAD_LEFT);// 2. -> fails -> 02. or 02
str_pad( 2.11 ,2,"0",STR_PAD_LEFT);// 2.11-> fails -> 02.11

有简单的代码吗?

如果可能的话请用Java相同

double x=2.11;
String.format("%02d%s", (int) x, String.valueOf(x-(int) x).substring(1))

不仅丑陋而且印刷品02.10999999999999988

编辑Java:Java integer part padding

解决方法:

您还可以使用printf()函数填充整数:

像(codepad)这样的东西:

<?php

function pad($n) {
    $n = explode('.', (string)$n);

    if (2 === count($n)) {
        return sprintf("%02d.%d\n", $n[0], $n[1]);    
    }

    return sprintf("%02d\n", $n[0]);    
}

foreach (array(2, 22, 222, 2., 2.11) as $num) {
    echo pad($num);
}

// returns 02, 22, 222, 02, 02.11
上一篇:卷积神经网络的padding规则


下一篇:【400】numpy.pad 为数组加垫(迷宫类题目)