`

Java格式化输出

    博客分类:
  • Java
 
阅读更多

在ACM上, 我们经常会碰到一些浮点数要求格式化输出(即保留多少位小数等)

这里主要介绍下Java怎么方便的来对浮点数四舍五入的保留制定小数位数

首先, Java也有printf函数, 其作用跟C/C++的基本相似, 只是格式串不同.

下面就来介绍它们各自格式串的异同之处.

1。整数: 格式串都是%d

2。字符: 都是%c

3。字符串:都是%s

4。浮点数(double/float):

C/C++中, 格式串为%lf/%f

Java中, 格式串为%f(没有%lf)

 

在C/C++中, 如果我们想要保留到小数后2位输出(四舍五入)可以这样写

  1. double d1 = 123.635;  
  2. double d2 = 123.6;  
  3. printf("%0.2lf %.2lf/n", d1, d2);  

 

//输出为: 123.64 123.60

而在Java中呢, 

  1. double d1 = 123.635;  
  2. double d2 = 123.6;   
  3. System.out.printf("%#.2f %#.2f/n", d1, d2);  

 

//输出为: 123.64 123.60

在Java中, float写法同上.

 

 还有另一种方法, 就是使用java.text.DecimalFormat类

如:

  1. double d1 = 123.635;  
  2. double d2 = 123.6;  
  3. DecimalFormat df = new DecimalFormat(".00");  
  4. System.out.println(df.format(d1) + " " + df.format(d2));  

 

//输出为: 123.64 123.60

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics