Double 数据保留两位小数一:五舍六入

 1 package com;
 2
 3 public class T2 {
 4
 5     public static void main(String[] args) {
 6
 7         System.out.println(calculateProfit(0.233));
 8         System.out.println(calculateProfit(0.235));
 9         System.out.println(calculateProfit(0.237));
10         System.out.println(calculateProfit(0.2));
11
12     }
13
14     /**
15      * 保留double类型小数后两位,不四舍五入,直接取小数后两位 比如:10.1269 返回:10.12
16      *
17      * @param doubleValue
18      * @return
19      */
20     public static String calculateProfit(double doubleValue) {
21         // 保留2位小数
22         java.text.DecimalFormat df = new java.text.DecimalFormat("0.00");
23         String result = df.format(doubleValue);
24         return result;
25     }
26
27 }

运行结果:

0.23
0.23
0.24
0.20

其他:

1:其实我想做的是四舍五入,但是运行后发现竟然是 五舍六入,如果你有好的方法可以评论区告诉我。

2:DecimalFormat此类的用发:
          DecimalFormat此类格式化数字以后返回的是字符串,用#号格式化,位数不够的时候不补0, 用0格式化位数不够的时候补0.

      

     相关的博客    Double 数据保留两位小数二:直接截取小数后面两位,不进行四舍五入

 

时间: 2024-07-30 20:31:48

Double 数据保留两位小数一:五舍六入的相关文章

【开发日志】Long/Bigdecimal/double数据类型保留两位小数

今天开发碰到个需求就是保证回显到页面的数据保留两位小数,实际我们的数据是八位小数 可以明显的看到Bigdecimal是八位,虽说Long类型不用保留两位(强迫症),但是我还是想保留 1.Long类型 String.format("%.2f",参数) .第二个参数是double数据类型,String,int,Long 类型是不行的,float可以 2.Bigdecimal java.text.DecimalFormat df =new java.text.DecimalFormat(&q

java,中双精度double控制保留两位小数,js控制两位小数

Java DecimalFormat dcmFmt = new DecimalFormat("0.00"); double db = 12333.353; System.out.println(dcmFmt.format(db)); JS <script type="text/javascript"> //保留两位小数 //功能:将浮点数四舍五入,取小数点后2位 function toDecimal(x) { var f = parseFloat(x);

java double类型保留两位小数和四舍五入

package com.clzhang.sample; import java.math.BigDecimal; import java.math.RoundingMode; import java.text.DecimalFormat; import java.text.NumberFormat; public class DoubleTest { /** * 保留两位小数,四舍五入的一个老土的方法 * @param d * @return */ public static double fo

Double值保留两位小数的四种方法

public class DoubleTest { //保留两位小数第三位如果大于4会进一位(四舍五入) double f = 6.23556; /** *使用精确小数BigDecimal */ public void fun1() { BigDecimal bg = new BigDecimal(f); /** * 参数: newScale - 要返回的 BigDecimal 值的标度. roundingMode - 要应用的舍入模式. 返回: 一个 BigDecimal,其标度为指定值,其非

double 类型保留两位小数

1.Math.Round(0.333333,2);//按照四舍五入的国际标准2. double dbdata=0.335333; string str1=String.Format("{0:F}",dbdata);//默认为保留两位3. float i=0.333333; int j=(int)(i * 100); i = j/100;4. decimal.Round(decimal.Parse("0.3333333"),2)5. private System.Gl

c语言float、double数据保留2位小数

float sp = 36.51647; sp=( (float)( (int)( (sp+0.005)*100 ) ) )/100; 挺实用的.double也可以. 原文地址:https://www.cnblogs.com/airduce/p/9708795.html

BigDecimal类型数据保留两位小数即百分比运算

方法示例: DecimalFormat df = new DecimalFormat("0.00"); Object price = 2; Object price1 = 2.3; Object price2 = 2.3154; String str = df.format(price); String str1 = df.format(price1); String str2 = df.format(price2); System.out.println("str-->

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   f   =   111231.5585;  BigDecimal   b   =   new   BigDecimal(f);  double   f1   =   b.setScale(2,   BigDecimal.ROUND_HALF_UP).doubleValue();  保留两位小数  ---------------------------------------------------------------   方