方法1: float f = 34.232323; BigDecimal b = new BigDecimal(f); float f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).floatValue(); // b.setScale(2, BigDecim ...
分类:
编程语言 时间:
2017-02-07 18:00:48
阅读次数:
203
上面的代码输出结果为 0.0600000000000000050.5800000000000001401.499999999999941.2329999999999999 原因在于我们的计算机是二进制的。浮点数没有办法是用二进制进行精确表示。我们的CPU表示浮点数由两个部分组成:指数和尾数,这样的表 ...
分类:
其他好文 时间:
2017-02-05 15:34:06
阅读次数:
212
1、设立集合的时候要把变量设上 2、int转成Integer类型 int a = 111;Integer b = new Integer(a); 3、每个步骤走完了以后都要记得return 4、BigDecimal是一个不失精度的加减乘除都能用到的方法,pow是一个求n次方的方法,求利息和利率的题目 ...
分类:
其他好文 时间:
2017-02-04 14:44:54
阅读次数:
189
为了解决Java基本数据类型在运算时会出现的溢出和计算不精确的问题。Java 提供了两个类BigInteger和BigDecimal,专门用于进行高精度运算。凡是能用int 或float 做的事情,用BigInteger和BigDecimal也可以做,只是必须换用方法调用,而不是使用运算符。高精度整 ...
分类:
编程语言 时间:
2017-01-29 16:59:01
阅读次数:
296
因为直接引用float和double类型的数据进行算数运算的时候总是会进行精度的丢失,因此Java采用了bigdecimal类进行精度方面的运算,但是采用精度进行运算的时候,一般传入的是字符串,如果硬要传入double类型的数据的话,采用bigdecimal类提供的方法 产生了精度的丢失, 如果使用 ...
分类:
编程语言 时间:
2017-01-28 15:08:01
阅读次数:
204
//法一 double f=11.45564645656; BigDecimal b= new BigDecimal(f); double f1=b.setScale(7,BigDecimal.ROUND_HALF_UP).doubleValue(); System.out.println(f1); ...
分类:
编程语言 时间:
2017-01-24 18:00:41
阅读次数:
167
MYSQL JAVA int INTEGER decimal BigDecimal datetime Date timestmap Date (默认值 CURRENT_TIMESTAMP) varchar String bigint Long tinyint Byte ...
分类:
数据库 时间:
2017-01-20 19:31:24
阅读次数:
268
1、BigDecimal: 用来对超过16位数的精确运算,BigDecimal创建的是对象(不是基本类型数据),不能直接用+、-、*、/直接运算 ...
分类:
其他好文 时间:
2017-01-20 18:02:53
阅读次数:
168
bigint BIGINT long timestamp binary BINARY byte[] bit BIT boolean char CHAR String decimal money smallmoney DECIMAL java.math.BigDecimal float DOUBLE ...
分类:
数据库 时间:
2017-01-15 13:43:21
阅读次数:
269
如果基本的整型与浮点型不能满足需求,可以使用java.Math包提供的 BigInteger 和 BigDecimal 两个类,这两个类可以存储任意长度的数, BigInteger 实现的任意精度整数的计算,BigDecimal 实现了任意进度浮点数的计算。 使用valueOf方法可以将任意数装换为 ...
分类:
编程语言 时间:
2017-01-14 17:28:14
阅读次数:
172