MyException - 我的异常网
当前位置:我的异常网» J2ME » 求教两个double变量相乘的结果?

求教两个double变量相乘的结果?

www.MyException.Cn  网友分享于:2013-11-07  浏览:992次
求教两个double变量相乘的结果??
//这是源代码

public class Test1 {



public static void main(String[] args){


double r = 5;
double pai = 3.14;

System.out.println(2*r*pai);
}



}


//这是输出结果,31.400000000000002
//为什么不是31.4???????????

------解决方案--------------------
计算机不能精确表示浮点数
------解决方案--------------------
数据精度的问题。

你可以这样。
System.out.println((float)(2*r*pai));
------解决方案--------------------
double(8字节,64位)是浮点数,有效数字是15~16位
------解决方案--------------------
你可以这样写
double r = 5;
double pai = 3.14;
DecimalFormat df = new DecimalFormat("0.0");
System.out.println(df.format(2*r*pai));
输出是31.4

文章评论

软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有