java开发中,涉及到金钱计算的时候用什么数据类型,存储贷款金额用什么数据类型【杭州多测师】【杭州多测师_王sir】
-
回答: 一般使用 java.math.BigDecimal 类来处理需要高精度的计算
-
原因: 1.浮点数(double,flot)因为精度问题, 容易出现不精确的计算结果
2.浮点数范围比较小
BigDecimal 范围大, 并且比他们精确
- mysql数据库设计
- BigDecimal在进行入库时, 数据库选择decimal类型, 长度能够自定义, 如18; 小数点咱们项目中用的是2, 保留2位小数. 此外还要注意的就是默认值
- 必定写成0.00, 不要用默认的NULL, 不然在进行加减排序等操做时, 会带来转换的麻烦。
-
package com.java10.day04.section01; import java.math.BigDecimal; public class BigdecimalTest { /** * 金融项目中金额应该用什么数据类型? ==》用BigDecimal引用数据类型 * @param args */ public static void main(String[] args) { // 浮点数,存在精度问题 double d1 = 0.19 * 6; System.out.println(d1);// 1.1400000000000001 // 采用BigDecimal 来解决精度问题 BigDecimal bd1 = new BigDecimal("0.19"); BigDecimal bd2 = new BigDecimal("6"); BigDecimal bd3 = bd1.multiply(bd2); System.out.println(bd3);// 1.14 } }
转发来自:https://www.shangmayuan.com/a/9f39a3fb47594f9cb8582f9a.html
java 中 BigDecimal 详解:https://blog.csdn.net/qq_35868412/article/details/89029288
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示