用Java打印双倍数字System.out.printf

时间:2012-05-10 13:27:32

标签: java

我有一个双号,我想只打印这个号码的组成部分。我试图使用System.out.printf打印它,但我得到了IllegalFormatConversionException。我试过像:

A()
{ 
    double x;
    //calculate double
    System.out.println("%d",x);
}

我知道我可以使用System.out.print打印它,但也会打印小数部分。如何使用printf

执行此操作

3 个答案:

答案 0 :(得分:14)

System.out.printf("%.0f",x);
  • .0 指定精度。根据此处指定的精度舍入数字。 (例如,如果你想要2个小数位,你可以指定0.2)
  • f 指定它是浮点数 - 包括双精度数(d表示十进制整数)

答案 1 :(得分:0)

你也可以%g使用round-off并将double打印为整数:

System.out.printf("x=%g%n", x);

答案 2 :(得分:0)

您可以使用以下代码:

 public static void main(String[] args) {
    double x = 0 ;//The local variable x must be initialized
    System.out.printf("%d",(int)x);//in JDK 5
           //OR
    System.out.printf("%.0f",x);//in JDK 5
           //OR
    System.out.println((int)x);

}