第七节 Java代码避坑指南笔记
正确的选择数据类型
浮点型:浮点数是属于有理数中某特定子集的数字表示,在计算机中用以表示任意某个实数。
整型:计算机中的一个基本的专业术语,指没有小数部分的数据。
货币数据类型的选择
任何货币金额均以最小货币单位且整型类型来进行存储。如100.05存在数据库中是10005.取出的时候除以100.
float e = 0.1F;
if(0.1 == (double)e){
sysout("true");
}else{
sysout("false");
}
结果是false
float 转换到double的时候由于有效位数不一致,强制补0,所以在计算机里这两个数值是不相等的。
单精度的存储:
用乘二取整法计算二进制小数的数值。
除了2的能整除的数值之外,浮点数的小数位都是无穷无尽的,取有效位数近似表示。
科学计数法规格化
12310^5 = 1.2310^7
0.12310^-6= 1.2310^-7
精确的小数存储-decimal
decimal(M,D)
M:存储数字总长度
D:小数位占M的位数,必须小于M。
Java对应类:BigDecimal
浮点数据避坑
基本数据类型不能用==来比较。包装数据类型不能用equals来判断。
浮点数比较方式方式,定义一个偏差量
f