您的位置:首页 > 编程语言 > Java开发

java--精确到小数点后某位

2017-04-07 11:20 169 查看
做到某道题,最后要求是精确到小数点后某位。 一开始以为java中有相应的函数可以进行转化,后来发现居然没有,

有点懵。没办法只能自己想办法进行转换,自己一个乱搞结果居然搞出来了,有点小激动。

先贴代码:实例为精确到小数点后一位

/**
*
* @author luzi
*
*/

public class Demo {
public static void main(String args[]){
double a=11.22;
double b=(double)(Math.round(a*10))/10;		//这里的(double)一定要有,不然没法强制转换成相应精确度的小数
System.out.println(b);
}
}


其实很简单,我们要精确到小数点后 1 位,可以先乘以 10,然后进行四舍五入取整,这个时候11.22*10=112.2,

再四舍五入得到112,再将它转化为double类型:112.0,此时再除以10 则结果为 11.2。

float类型跟double一样.

要求精确到小数点后n位就先乘以 10^n,转换后再除以 10^n 即可
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: