`

Java中的浮点数

阅读更多
float 4bytes 有效位数为6~7位
double 8bytes  有效位数为15位

IEEE单精度浮点数位数分布
1bit  8bits  23bits  //1位符号 8位指数 23位尾数
IEEE双精度浮点数位数分布
1bit  11bits 52bits  //1位符号 11位指数 52位尾数

通常采用double型的,float一般都不能满足需要。

在JDK5.0中,可以用16进制来表示浮点。
0.125可以表示为0X1.0p-3   //尾数为16进制,指数采用10进制。指数的基为2进制。
0.125=1*2e-3

浮点数值不适用于禁止出现舍入误差的金融计算中。如,System.out.pirntln(2.0-1.1) 将打印出0.899999999999,而不是人们想要的0.9。主要原因是系统采用2进制表示,而2进制在系统中是没有办法准确的表示1/10的。就像10进制的没有办法准确的表示1/3样。如果数值中不含有任何的舍入误差,就应该使用BigDecimal类。
分享到:
评论

相关推荐

    JAVA中浮点数的运算

    在Java编程语言中,浮点数的运算涉及到的是数值计算,特别是小数部分的处理。浮点数在计算机内部是以二进制表示的,这与我们通常使用的十进制系统不同,因此在进行浮点数运算时可能会出现精度丢失的问题。这篇博客...

    java中浮点数的应用

    该案例演示了浮点数的应用

    Java中浮点数精度问题的解决方法

    在Java编程中,浮点数精度问题是一个常见的困扰,尤其是在进行数学计算或财务计算时。浮点数精度问题主要体现在,当使用float或double类型的数值进行运算时,结果并不总是与预期相符,这主要是由于计算机内部对...

    疯狂Java讲义 浮点数转换成人民币读法

    在Java中,浮点数有两种类型:float和double。float是单精度浮点数,占用4个字节,精度约为7位小数;double是双精度浮点数,占用8个字节,精度约为15位小数。由于浮点数在计算机内部是以二进制形式存储的,因此可能...

    java 浮点数举例

    java 浮点数举例java 浮点数举例java 浮点数举例

    Java输入浮点数分别输出整数部分和小数部分

    Java输入浮点数分别输出整数部分和小数部分

    JavaIEEE754浮点数的转换方法

    [Java]IEEE754浮点数的转换方法,方法都写好了,直接复制过去就可以用了,就这么简单!

    java精确计算浮点数工具类

    Java对浮点数的计算是不精确的,比如0.05+0.01结果不是0.06,而是0.060000000000000005,更有甚者,一个数除以0.0,Java是不会抛异常,而是得出无穷大的结果.本工具类解决了上述问题.该类提供了加减乘除四则运算的精确计算...

    ModbusRTU协议中浮点数转换

    本文将深入探讨如何在C#中处理Modbus RTU协议中的浮点数转换,包括浮点数到整型以及整型到浮点数的转换,并简要介绍Modbus RTU协议。 首先,让我们理解一下Modbus RTU协议。Modbus是基于串行通信的一种简单协议,...

    JLab.rar_floating point java_jl

    在Java编程语言中,浮点数操作是计算密集型任务的一部分,特别是在科学计算、图形处理或任何需要高精度和精度损失容忍度的应用中。标题"JLab.rar_floating point java_jl"暗示了这是一个关于Java中浮点数运算的实验...

    java训前考试

    第三题测试的是Java中浮点数比较的特性。由于浮点数的精度问题,直接用`>`或`进行比较可能会得到意外的结果。在给出的代码中,`pi`的值(3.14f)确实大于3,但因为浮点数的比较,编译不会出错,运行时也不会抛出...

    用java从文件中读取浮点数

    在Java编程语言中,从文件中读取浮点数是一个常见的操作需求,尤其是在处理大量数据或进行数据分析时。本文将详细解析如何利用Java标准库中的类来实现这一功能,包括必要的异常处理,确保代码的健壮性和实用性。 ##...

    Java中实现浮点数的精确计算

    ### Java中实现浮点数的精确计算 在Java编程中,使用`float`和`double`类型进行浮点数计算时经常会遇到精度丢失的问题。这是因为浮点数在计算机内部是以二进制形式存储的,而某些十进制小数无法用二进制精确表示,...

    Java中如何正确进行浮点数运算

    在Java编程中,浮点数运算常常会遇到精度问题,这是由于浮点数在计算机内部的存储方式导致的。为了确保浮点数运算的准确性,开发者需要采取特定的方法。以下将详细阐述这个问题,并提供正确的处理策略。 首先,理解...

    《Java面向对象程序设计》(第版)课后答案.docx

    7. **变量和类型转换**:Java中浮点数常量必须以f或F结尾来声明为float类型;double常量可以省略d或D后缀。在代码中,字符型变量在进行数值转换时需要注意数据类型的兼容性。 8. **数组操作**:获取数组长度使用`....

    Java解惑(中文+书签).pdf

    Java中的`double`类型属于二进制浮点数,它在表示十进制小数时可能会出现精度损失的问题。这是因为某些十进制小数无法用二进制数精确表示,例如`1.1`。当使用`double`类型进行算术计算时,这会导致不可预期的结果。...

    Java浮点数.pdf

    Java中的浮点数类型主要包括两种:float和double。它们分别占据了4个字节(32位)和8个字节(64位)的内存空间。这两种类型在计算机内部的存储方式遵循IEEE 754浮点数表示标准,这是一种高效且广泛使用的浮点数存储...

    JAVA基础练习1.pdf

    【Java基础知识】 1. Java是一种面向对象的语言,这意味着它的核心设计是基于对象,允许程序员创建和操作对象,而不是直接操作硬件或系统资源...由于Java中浮点数和整数无法直接相加,因此这段代码不会输出任何内容。

    JAVA就业视频教学

    首先,让我们关注一下"浮点数的表示形式.rm"这个文件,它很可能是讲解JAVA中浮点数存储和运算的视频。在JAVA中,浮点数有两种主要的类型:`float`和`double`。`float`占用4个字节(32位),精度约为7位小数;而`...

Global site tag (gtag.js) - Google Analytics