- 浏览: 232766 次
文章分类
- 全部博客 (160)
- java语言基础 (67)
- jsp基础 (2)
- eclipse使用 (2)
- java源码解读 (6)
- 计算机基础 (3)
- eclipse插件 (0)
- 网络基础 (8)
- 算法 (2)
- linux (0)
- 英语 (0)
- C语言 (4)
- JavaScript (17)
- 数学 (0)
- struts2 (2)
- 自然哲学 (0)
- Servlet (1)
- HttpServer (2)
- ext (1)
- 个人 (1)
- dojo (27)
- spring (2)
- hibernate (4)
- css (3)
- 多线程 (0)
- chrome插件开发 (0)
- svn (0)
- thrift (2)
- phonegap (1)
- java线程 (1)
- 不是很熟悉的css属性 (0)
- 数据库性能调优 (0)
- 项目管理 (1)
- ios (0)
- 软件工程 (0)
- db2 (0)
- 词汇管理 (0)
- zhenyan (0)
- 计划 (0)
- android (0)
- ssss (0)
- 是的 (0)
- dsada (0)
- 泛点是 (0)
- fds (0)
- cxzc (0)
- 权限 (0)
- dfsfds (0)
- http://www.cnblogs.com/kingboy2008/p/5261771.html (0)
- sss (0)
- ddd (0)
- fdsfdsf (0)
- sso (0)
- nginx (0)
- 分布式数据一致性 (0)
- mysql (0)
- ios永久存储 (0)
- js匿名函数 (0)
- 打印机qqq (0)
最新评论
Java中提供了高精度算数的类,BigInteger和BigDecimal类。这两个类类似于int和double,能像他们一样进行加减乘除操作,只是运算速度会慢点,但是却能换来高精度。
double在运算时,常常会有舍入误差(浮点数运算结果不是精确解),比如下面的例子:
public class TestDouble { public static void main(String[] args) { //浮点数乘法 double a = 0.3333333333333333; System.out.println(3 * a); //BigDecimal乘法 BigDecimal s1 = new BigDecimal("0.3333333333333333"); BigDecimal s2 = new BigDecimal("3"); System.out.println(s1.multiply(s2)); } }
运算结果:
1.0
0.9999999999999999
发表评论
-
mysql并发
2013-01-08 13:38 0/** * 测试msql JDBC连接并发安全性 ... -
java注解2
2013-01-06 22:02 1008由前一篇的代码,运行代码如下:public clas ... -
java注解1
2013-01-06 21:56 944本文演示java注解的使用 1. getDe ... -
Java集合框架分析
2012-08-29 21:28 01. Java集合整体框架 下面的两张图说明 ... -
AbstractList
2012-08-29 20:48 976public abstract class Abstra ... -
Set
2012-08-28 11:17 677public interface Set<E> e ... -
List源码
2012-08-28 11:15 1003public interface List<E&g ... -
Collection源码
2012-08-28 11:13 938public interface Collection< ... -
java集合框架
2012-08-28 10:39 0java的集合框架中,主要有3类常用的集合。 -
web的debug
2012-03-29 10:48 0hh -
文件读取
2012-03-10 19:32 0public class Util { publ ... -
HTML元素的访问
2011-11-30 09:31 0有3忠方法可以访问html中的元素。 -
Schema数据类型
2011-11-26 16:34 0Schema不仅内置了丰富的数据类型,而且还允许开发者 ... -
初学XML3
2011-11-26 10:08 0编写了XML Schema语义约束之后,必须将其导入目 ... -
初学XML2
2011-11-26 09:22 817<?xml version="1.0& ... -
初学XML
2011-11-26 08:50 883<?xml version="1.0&q ... -
JavaScript字符串
2011-11-19 21:29 915JavaScript有三种基本数据类型,字符串,数字以 ... -
项目管理
2011-11-05 22:39 0项目管理开始于项目计划阶段,贯穿于整个系统开发生命周期 ... -
项目可行性分析
2011-11-05 21:23 0项目可行性包括三个方面:技术可行性,经济可行性,组织 ... -
系统开发生命周期
2011-11-05 21:16 0系统开发生命周期有四个4个基本阶段: 计划- ...
相关推荐
这种精度丢失的现象对于需要高精度计算的应用来说是一个常见的问题。本文将详细介绍Java中的 `double` 类型精度问题,并提供几种解决方法。 #### 一、Java Double 精度丢失的原因 1. **二进制表示限制**:`double`...
在计算机科学中,高精度计算是指处理非常大的数值,这些数值超过了标准数据类型(如int或float)所能表示的范围。这种计算通常涉及到数学、金融、科学计算等领域,需要精确到多位小数。本主题主要关注如何使用双向...
总结,Java数值计算算法编程涵盖了基础数据类型与运算、数学库的使用、高精度计算、迭代与递归、数据结构应用、矩阵运算、并发处理以及面向对象设计等多个方面。理解并掌握这些知识点,能够帮助开发者在Java环境中...
浮点数运算通常涉及小数计算,Java提供了`float`和`double`两种类型,其中`double`精度更高。整数运算主要由`int`, `long`, `short`, `byte`等类型完成,而复数运算则通过`java.lang.Math`类提供的静态方法或`java....
因此,理解和掌握舍入模式(如ROUND_HALF_UP、ROUND_DOWN等)以及BigDecimal类的应用是必要的,特别是在金融计算和高精度计算中。 此外,示例程序可能还涉及了一些高级主题,如非线性方程的求解(如牛顿迭代法、...
4. `Math.log双精度(float a)`:对于Java 8及更高版本,此方法计算浮点数a的双精度自然对数,提供了更高的精度。 除了这些基础方法外,还有一些高级用法。例如,你可以通过对数法则来解决更复杂的数学问题,比如...
本资源“Java常用数值算法集”提供了丰富的算法实现,帮助开发者提高程序的计算效率和精度。以下是根据标题、描述和标签提炼出的一些重要Java数值算法知识点: 1. **基础算法**:Java中的基本算术运算包括加减乘除...
在实际编程中,可以使用已有的高精度库,如Python的`decimal`模块或Java的`BigInteger`类,它们已经封装了这些操作。但是,了解这些运算背后的原理对于优化代码和解决特定问题非常有帮助。 高精度计算不仅涉及基本...
理解浮点数的局限性和使用`BigDecimal`类进行高精度计算,能帮助我们处理这些问题。 5. **矩阵运算与线性代数**:在科学计算中,线性代数的应用广泛。虽然Java标准库没有提供内置的矩阵类,但有第三方库如Apache ...
1. **浮点数和精度问题**:Java中使用`float`和`double`数据类型表示浮点数,但需要注意的是,它们并不完全精确,这源于二进制表示浮点数的局限性。在进行数值计算时,必须考虑这一点,尤其是在涉及到小数点后的多位...
在IT领域,高精度计算(High Precision Arithmetic)是处理大整数或浮点数时,为了保持数值计算的精确性而采用的一种技术。通常,计算机的内置数据类型(如int、float、double)都有其计算精度限制,对于超出这个...
3. **兼容性**:高精度运算模块2.1版与多种编程语言接口良好,如C++、Python、Java等,方便开发者集成到现有的软件系统中,无需重构大量代码。 4. **易用性**:模块提供了用户友好的API和文档,使得开发人员能够...
### 高精度计算1000阶乘 #### 背景介绍 在数学和计算机科学领域中,阶乘是一个非常重要的概念。阶乘是指所有小于及等于该数的正整数的乘积,通常表示为n!。例如,5! = 5 × 4 × 3 × 2 × 1 = 120。当计算较大的...
Bisection方法(二分查找)和Newton-Raphson方法是两种常用的技术,Java实现时需要注意迭代次数和精度控制。 5. **插值与拟合**:插值用于通过有限的离散数据点构造一个函数,使得该函数在每个数据点处的值与原始...
在IT领域,大数(Large Number)和高精度(High-Precision)计算是计算机科学中的一个重要部分,特别是在数值计算、密码学、金融计算以及科学计算等领域。这些需求推动了特定类型的计算器和算法的发展,旨在处理超出...