1.用偶数判断,不用奇数判断,否则:
-1%2 ==1 ?奇数:偶数,结果会是偶数;
2.使用BigDecimal弥补浮点无法精确计算,与数据库Decimal类型的字段映射是最优的方案;在非金融行业,使用整型数据扩大100进行计算,最后输出在缩小100倍。
3.不要让类型默默转换,因为java先计算值,最后在做类型转换,否则:
long a = 30 10000*1000*60 8 计算结果会是负数,所有long a = 30 L*10000*1000*60* 8
4.int正最大值2147483647
5.四舍五入问题用RoundingMode类
6、不要设置随机种子,Random类 和 Math.random();