当前位置: 首页 > 面试题库 >

PHP整数部分填充

阴培
2023-03-14
问题内容

我需要用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


问题答案:

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

类似于(键盘):

<?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


 类似资料:
  • 我正在比较填充整数列表所需的时间与整数向量。 每个矢量 令我惊讶的是,填充列表比填充整数向量快100倍。我希望填充整数的向量要快得多,因为向量在内存中是连续的,插入要快得多。 填充列表怎么会比填充向量快100倍而不是10倍呢?我肯定我缺少一些导致这种情况的概念或想法。 这是我用来生成结果的代码 有人能给我解释一下为什么会这样吗???

  • 问题内容: 是否存在将数字分割成两个部分(即整数部分和小数部分)的有效方法? 问题答案: 用途:

  • 我正在制作一个使用tableView的程序。一切都进行得很顺利,只是由于某些原因,我无法获得要填充到表中的整数值。下面是我在主程序中的代码,当我运行程序时,字符串和Double填充,但整数没有。在我的产品类中,sku是int。不太确定哪里出了问题,寻找一些洞察力! 这里是发票对象和添加产品。

  • 文档的最后一部分包括了Spring Framework与一系列J2EE(及相关)技术的整合。 第 18 章 使用Spring进行远程访问与Web服务 第 19 章 Enterprise Java Bean(EJB)集成 第 20 章 JMS 第 21 章 JMX 第 22 章 JCA CCI 第 23 章 Spring邮件抽象层 第 24 章 Spring中的定时调度(Scheduling)和线程

  • 对于正整数n和k,让“n的k-分区”是k个加起来等于n的不同正整数的有序列表,让给定n的k-分区的“秩”是它在所有这些列表的有序列表中的位置,从0开始。 例如,有两个5(n)的2分区 所以,我想做两件事: 给定n,k和n的k-划分,我想求n的k-划分的秩。 给定n,k和一个秩,我想找到n的k-划分 我能做到这一点,而不必计算n的所有k-划分,在感兴趣的k-划分之前吗? 这个问题与其他问题不同,因为

  • 到目前为止,这就是我得到的,但我不太确定接下来该怎么办。我(认为)这里发生的是,它到达数组的第一个位置,在0,0处,并生成一个数字。然后转到1,1和2,2,依此类推。我不确定该从那里开始,我相信有一种更有效的方法可以一次填充整行或整列。 此外,我的编译器不允许我像平时一样使用cout或endl?它坚持我使用std::cout,我只是想知道为什么。