"%d:%02d"是什么意思?在`printf`?

时间:2015-11-01 19:32:34

标签: java

我编写了以下代码,将小时数转换为分钟数。我从互联网上得到了一些帮助,但我并不是100%确定"%d:%02d"装置

package time;

public class TimeAssignment {

    public static void main(String[] args) {
        // This program will convert hours into minutes
        int time = 120;
        int hours = time / 60; 
        int minutes = time % 60;
        System.out.printf("%d:%02d", hours, minutes);
    }

}

6 个答案:

答案 0 :(得分:9)

  

尽管我并非100%确定“%d:%02d”的含义是什么

你走了:

  • %d表示整数
  • :是:
  • %02d表示一个整数,左边用零填充,最多2位数。

https://docs.oracle.com/javase/8/docs/api/java/util/Formatter.html#syntax

的更多信息

答案 1 :(得分:0)

这些只是打印数字的方式。请查看此帖子java specifiers,了解您正在使用的说明符。

简单来说,%d是一个整数,在你的情况下是“小时”,而%02d是一个整数,显示为“xx”取自变量“minutes”

答案 2 :(得分:0)

答案 3 :(得分:0)

“d”是“十进制”整数,对于八进制整数也有“o”,对于十六进制整数也有“x”/“X”。剩下的就像Janos解释的那样。

答案 4 :(得分:0)

%2d输出一个十进制(整数)数字,至少填充2个字符空格,填充空格。 %d类似于%2d,但它只包含一个字符空间。 Learn more from here about this %d, %02d, %f etc 例如:5→“5”,120→“120”

答案 5 :(得分:0)

在这个问题中,当我们谈论%d时,我们谈论的是小时,:是数字时钟上的:,而%02d是指分钟的减少左侧的0最多两位数。

因此,%d:%02d的意思是hr:min