易网时代-编程资源站
Welcome
微信登录
编程资源
图片资源库
蚂蚁家优选
PDF转换器
软件资源
软件开发
、
小程序制作
、
系统集成与运维
、
空间租用
、
硬件开发
、
视频监控
、
技术咨询与支持
——联系电话:0311-88999002/88999003
首页
/
操作系统
/
Linux
/
Java高效的获取指定的精度的double数
Java高效的获取指定的精度的double数
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;
}
}
收藏该网址
版权所有©石家庄振强科技有限公司2024
冀ICP备08103738号-5
网站地图