package com.czp;
public class MathUtil {
public static void main(String[] args){
double d = 123.5465893;
System.out.println(getRealVaule(d, 0));
//=>124
System.out.println(getRealVaule(d, 3));
//=>123.547
}
/**
* 对结果进行四舍五入
*
* @param value :原始数
* @param resLen :所要的精度
* @return
*/
public static Number getRealVaule(double value,int resLen) {
if(resLen==0)
//原理:123.456*10=1234.56+5=1239.56/10=123
//原理:123.556*10=1235.56+5=1240.56/10=124
return Math.round(value*10+5)/10;
double db = Math.pow(10, resLen);
return Math.round(value*db)/db;
}
}
java高效的获取指定的精度的double数
最新推荐文章于 2024-06-29 03:17:58 发布
本文介绍了一个用于数学计算的工具类,重点解释了四舍五入算法的实现原理,并通过实例展示了如何使用该类进行数值处理。
337

被折叠的 条评论
为什么被折叠?



