关于JAVA的精确度

原创 2005年03月01日 12:20:00

关于JAVA的精确度

Java

/*
*关于JAVA的精确度*
*书上云:float的精确度是7位,double的精确度为17位*
*摘自《BEGIN JAVA 2》JAVA入门经典                *
*但下面的程序却让我对此产生了怀疑                *
*/
public class Yasa{
 public static void main(String arg[]){
  /*测试十一分之一的结果*/
  int m=1;
  int n=11;
  float o=(float)m/n;
  double p=(double)m/n;
  System.out.println("1/11 in float="+o+"/n"+"1/11 in double="+p);
  /*测试十一分之十二的结果*/
  int e=12;
  int f=11;
  float g=(float)e/f;
  double h=(double)e/f;
  System.out.println("12/11 in float="+g+"/n"+"12/11 in double="+h);
  /*测试三分之一的结果*/
  int a=1;
  int b=3;
  float c=(float)a/b;
  double d=(double)a/b;
  System.out.println("1/3 in float="+c+"/n"+"1/3 in double="+d);
  /*测试三分之四的结果*/
  int w=4;
  int x=3;
  float y=(float)w/x;
  double z=(double)w/x;
  System.out.println("4/3 in float="+y+"/n"+"4/3 in double="+z);
 }
}
/*运行结果:*
*1/11 in float=0.09090909             为8位*
*1/11 in double=0.09090909090909091   为17位*
*12/11 in float=1.0909091             为7位*
*12/11 in double=1.0909090909090908   为16位*
*1/3 in float=0.33333334              为8位*
*1/3 in double=0.3333333333333333     为16位*
*4/3 in float=1.3333334               为7位*
*4/3 in double=1.3333333333333333     为16位*
*================================*
*运行结果尺度不一,这说明精确度不是基于10进制考虑的*
*/

关于项目干系人

1、了解项目干系人的期望 2、识别和管理项目干系人 3、如何让项目干系人满意
  • 2017年07月18日 16:20

关于PHP运算精确度的问题

遇到一个很坑的问题 数值做float类型转换之后,经过运算之后得到了     'amount' => 110.00000000000001, 与数据库的数据进行比较导致不匹配, 这个属于PH...
  • my_one_piece
  • my_one_piece
  • 2017-09-19 15:48:47
  • 254

Java精度问题

一、 计算机的小数计算一定范围内精确,超过范围只能取近似值: 计算机存储的浮点数受存储bit位数影响,只能保证一定范围内精准,超过bit范围的只能取近似值。 java中各类型的精度范...
  • wangyidasb
  • wangyidasb
  • 2016-05-13 15:00:57
  • 599

java 数字计算精度问题

问题的提出:   编译运行下面这个程序会看到什么?   public class Test{ public static void mai...
  • gqltt
  • gqltt
  • 2013-11-13 17:34:02
  • 1945

js中取得不同精度的时间,时间戳,时间差的方法

http://blog.csdn.net/kingviker/article/details/7951106 http://jimliu.net/2014/03/16/hrt-in-js/ h...
  • tiangej
  • tiangej
  • 2017-09-08 09:38:50
  • 233

Java中sleep的控制精度问题以及深入理解

今天突然对sleep的控制精度与原理有点好奇,然而作为小白又找不到源码,就搜了一些资料整理一下  先看一下一个讲解比较简单的文章 http://blog.sina.com.cn/s/blog_56...
  • ynh_bolg
  • ynh_bolg
  • 2018-01-23 18:47:48
  • 26

java中的数据精度计算问题

网上看了一些资料,在开发中遇到金额的计算很实用啊!! 如果需要精确计算,非要用String来够造BigDecimal不可!...
  • u014114857
  • u014114857
  • 2015-11-06 16:26:20
  • 366

【java基础】BigDecimal 精度控制

BigDecimal提供了精确的数值计算,其中8种舍入方式值得掌握。 1、ROUND_UP 舍入远离零的舍入模式。 在丢弃非零部分之前始终增加数字(始终对非零舍弃部分前面的数字加1)...
  • xiaolei1021
  • xiaolei1021
  • 2016-08-23 11:02:51
  • 264

jacobi迭代法

  • 2012年10月06日 22:51
  • 1KB
  • 下载

c++之精确度

#include //含iomanip头文件 using namespace std;int main() { double pi=31415.9265333; cout...
  • u014445884
  • u014445884
  • 2016-04-22 14:37:40
  • 201
收藏助手
不良信息举报
您举报文章:关于JAVA的精确度
举报原因:
原因补充:

(最多只允许输入30个字)