本月博客排行
-
第1名
龙儿筝 -
第2名
lerf -
第3名
fantaxy025025 - johnsmith9th
- zysnba
- xiangjie88
年度博客排行
-
第1名
青否云后端云 -
第2名
宏天软件 -
第3名
gashero - wy_19921005
- vipbooks
- benladeng5225
- e_e
- wallimn
- javashop
- ranbuijj
- fantaxy025025
- jickcai
- gengyun12
- zw7534313
- qepwqnp
- 解宜然
- ssydxa219
- zysnba
- sam123456gz
- sichunli_030
- tanling8334
- arpenker
- gaojingsong
- kaizi1992
- xpenxpen
- 龙儿筝
- jh108020
- wiseboyloves
- ganxueyun
- xyuma
- xiangjie88
- wangchen.ily
- Jameslyy
- luxurioust
- mengjichen
- lemonhandsome
- jbosscn
- zxq_2017
- lzyfn123
- nychen2000
- forestqqqq
- wjianwei666
- ajinn
- zhanjia
- siemens800
- Xeden
- hanbaohong
- java-007
- 喧嚣求静
- mwhgJava
最新文章列表
java浮点数精确运算(java.math.BigDecimal)
由于Java的简单类型不能够精确的对浮点数进行运算,这个工具类提供精确的浮点数运算,包括加减乘除和四舍五入。
package utils;
import java.math.BigDecimal;
public class ArithUtils {
//默认除法运算精度
private static final int DEF_DIV_SCALE = 1 ...
判断double是否为整数
/**
* 判断double是否是整数
* @param obj
* @return
*/
public static boolean isIntegerForDouble(double obj) {
double eps = 1e-10; // 精度范围
return obj-Math.floor(obj) < eps;
}
java之int,double,float,long,字节,位和他们之间存在的内存泄漏
1、java中的位是传输单位,字节是存储单位,8个位等于1个字节
2、int 4个字节,32位。最小值-2的31次方,最大值2的31次方
3、long 8个字节,64位。最小值-2的64次方,最大值2的64次方
4、double 8个字节,64位。最小值为-2的1074次方,最大值为2的1024次方
5、float 4个字节,32位。 最小值为-2的148次方,最大值为-2的128次方
...
Java中如何将double类型的值保留小数点后两位或者多位
Java中如何将double类型的值保留小数点后两位或者多位
样例代码如下:
<%@ page import="java.text.*"%>
<%
String strValue="12345678908";
double doubleTransform = Double.parseDouble(strValue)/100;
...
Mongo shell 函数详解 - 数据类型
> db.language.find({status:1})
{ "_id" : 1, "name" : "java", "status" : 1, "tags" : [ "jsp", "servlet", "groovy" ] ...
float或double的IEEE745 二进制形式
下面两个函数可以返回float和double类型的数据的IEEE745二进制形式
public String convert(float num) {
int intVal = Float.floatToIntBits(num);
return intVal > 0
? "0" + Integer.toBinaryString(intVal) ...
Item 48: Avoid float and double if exact answers are required
1. The float and double types are particularly illsuited for monetary calculations because it is impossible to represent 0.1 (or any other negative power of ten) as a float or double exactly. The rig ...
java中float和double的问题
很多朋友都知道java中直接用float和double运算会有精度的问题,其本质的原因是计算机只认识二进制数,直接用二进制来表示带有小数的十进制,本来就是无法做到精确地,比如0.1转换成二进制位为:
0.1(十进制) = 0.0001100110011001100......(二进制)
所以在java中进行商业逻辑运算,还是要用BigDecimal,具体用 ...