进行单元测试步骤:第一步:将所有的运算分类情况封装在Calculator类中:import java.math.BigDecimal;import java.text.DecimalFormat;public class Calculator{ long sum; cha...
分类:
其他好文 时间:
2015-04-30 18:01:17
阅读次数:
132
引言
最近在看项目中的各种计算,因为是金融方面的项目,涉及到日化,年化,利息,债转这些和钱有关的计算很多,其中全部通过BigDecimal类进行的运算,以前涉及到的计算基本都用+、-、*、/等算术运算符直接进行数学运算,数据类型一般用double就能解决问题,但是如果要求完全精度时double就不合适了,因为double是在广域数值范围上提供较为精确的快速近似计算(只能处理16位有效数)。
...
分类:
编程语言 时间:
2015-04-29 21:44:17
阅读次数:
175
Java中关于 BigDecimal 的一个导致double精度损失的"bug"
分类:
编程语言 时间:
2015-04-27 13:04:30
阅读次数:
194
我们都知道,java中对大小数,高精度的计算都会用到BigDecimal.但是在实际应用中,运用BigDecimal还是会遇到一些问题.下面说一下我在项目中怎么样BigDecimal和遇到的一些问题. 1. 对商品的价格进行格式化,比如所有商品的价格保留两位小数 Java代码/****@par...
分类:
其他好文 时间:
2015-04-24 11:59:21
阅读次数:
109
BigDecimal通常在涉及到精确计算的时候会用到,下面是自己多次错误使用BigDecimal的总结。结论:BigDecimal初始化小数时,尽量用字符串形式,例如newBigDecimal("0.1");BigDecimal类型变量比较大小时用compareTo方法,判断变量值是否为0,与Big...
分类:
其他好文 时间:
2015-04-21 18:00:22
阅读次数:
155
1、BigDecimal的divide方法
进行除法时当不整除,出现无限循环小数时,就会抛异常的,异常 如下:java.lang.ArithmeticException。可以使用divide(BigDecimal divisor, int scale, int roundingMode)限定位数。
2、添加事件监听器
(1)采用内部类
new ClassName(){需要重写的方法}
...
JAVA的两个类BigInteger和BigDecimal分别表示大整数类和大浮点数类,理论上能够表示无限大的数。
1:大整数:BigInteger
import java.util.*;
import java.math.*;
public class Test {
public static void main(String[] arg...
分类:
编程语言 时间:
2015-04-10 09:38:01
阅读次数:
184
BigDecimal strScien = new BigDecimal("9.67953970412123E-05");System.out.println(strScien.toPlainString());
分类:
编程语言 时间:
2015-04-08 21:12:09
阅读次数:
181
在mybatis中默认插入一条记录后,返回值为插入记录的条数。现在想获取插入记录后,当前被插入的记录的主键值,需在insert方法中添加如下代码:<insertid="insert"parameterType="cn.com.pm.ppm.model.UserInfo"><selectKeyresultType="java.math.BigDecimal"order="BE..
分类:
数据库 时间:
2015-04-03 19:38:26
阅读次数:
238
这两天,由于我的必修课概率论里经常要用到排列组合的计算,感觉很麻烦,加上现代智能手机的计算器是没有这方面功能的。所以,就自己动手写了个安卓的 排列组合 计算器,用了一天,发现有很大的问题,阶乘达百亿级别的数,程序将不再运行。我这里举个例子,30的阶乘,30!=1x2x3x4x5....x30,这个明...
分类:
编程语言 时间:
2015-03-16 23:03:16
阅读次数:
286