Java保留小数问题

 1 import java.io.*;
 2 import java.math.*;
 3 import java.text.NumberFormat;
 4 import java.util.*;
 5
 6 public class Main {
 7
 8     public static void main(String[] argc) {
 9         Scanner cin = new Scanner(System.in);
10         while (cin.hasNext()) {
11             BigDecimal d = cin.nextBigDecimal();
12             // 方式一
13             java.text.DecimalFormat df = new java.text.DecimalFormat("#.00");
14             System.out.println(df.format(d.doubleValue()));
15             // 方式二
16             double f = d.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
17             System.out.println(f);
18             //方式三
19             NumberFormat ddf=NumberFormat.getNumberInstance();
20             ddf.setMaximumFractionDigits(2);
21             String s=ddf.format(d.doubleValue());
22             System.out.println(s);
23         }
24     }
25
26 }
时间: 2024-11-13 04:06:42

Java保留小数问题的相关文章

java保留小数后两位的四种写法

java保留小数后两位的四种写法 package com.btzh.mis.house.utils; import java.math.BigDecimal;import java.math.RoundingMode;import java.text.DecimalFormat; /** * Double类型数据处理类 * @author weijixiang * @date 2017/10/17. */public class NumberUtil { public static Double

Java保留小数点后有效数字

Java中的保留有效数字的方式有很多,感觉很是繁琐,不如直接: 1 System.out.printf("%.1f",69.66); 这是保留一位有效数字,自动四舍五入了,结果为69.7: : 你怎么了? : 我学不完了......o(╥﹏╥)o 学无止境啊... 如有个别回答错误,评论指出,我必更改,谢谢!?? 原文地址:https://www.cnblogs.com/Hrain/p/10360407.html

Java 保留两位小数

java保留小数问题的方法: 方法一:四舍五入 使用java.Math.BigDecimal类 double d = 12.345; BigDecimal bd = new BigDecimal(2,BigDecimal.ROUND_HALF_UP).doubleValue(); 方法二:使用java.text.DecimalFormat类 double d = 12.345; DecimalFormat dFormat = new DecimalFormat(".00"); dFor

java使double保留两位小数的多方法 java保留两位小数

这篇文章主要介绍了java使double类型保留两位小数的方法,大家参考使用吧 复制代码 代码如下: mport java.text.DecimalFormat; DecimalFormat    df   = new DecimalFormat("######0.00"); double d1 = 3.23456  double d2 = 0.0;double d3 = 2.0;df.format(d1); df.format(d2); df.format(d3); 3个结果分别为:

java中double变量保留小数问题

(转载自玄影池扁舟) 做java项目的时候可能经常会遇到double类型变量保留小数的问题,下面便把我的经验做个简短的总结: java中double类型变量保留小数问题大体分两种情况: (一):小数点后面位数过长,四舍五入保留指定位数: 可以用以下代码实现: public class TestDemo { public static void main(String[] args) {     double a=15.32743859;     double b=Math.round(a*100

BigDecimal 高精度计算 熟悉扩展,java除法保留小数问题

java保留两位小数问题: 方式一: 四舍五入  double   f   =   111231.5585;  BigDecimal   b   =   new   BigDecimal(f);  double   f1   =   b.setScale(2,   BigDecimal.ROUND_HALF_UP).doubleValue();  保留两位小数  --------------------------------------------------------------- 方式二

java.math.BigDecimal保留两位小数,保留小数,精确位数

http://blog.csdn.net/yuhua3272004/article/details/3075436 使用java.math.BigDecimal工具类实现 java保留两位小数问题: 方式一(四舍五入形式保留两位小数,注意模式ROUND_HALF_UP): 四舍五入   double   f   =   111231.5585;   BigDecimal   b   =   new   BigDecimal(f);   double   f1   =   b.setScale(2

Java保留两位小数的几种做法

1.  String类型数字始终保留两位小数 public static void main(String[] args) {   DecimalFormat format = new DecimalFormat("0.00");  String abc ="100.456";  String a = format.format(new BigDecimal(abc)); System.out.println(a); } 2. 另外几种办法 原文 http://mo

转载:java保留2位小数

转载:http://blog.csdn.net/wj_j2ee/article/details/8560132 java保留两位小数问题: 方式一: 四舍五入  double   f   =   111231.5585;  BigDecimal   b   =   new   BigDecimal(f);  double   f1   =   b.setScale(2,   BigDecimal.ROUND_HALF_UP).doubleValue();  保留两位小数  -----------