Float/Double不可以進行運算,BigDecimal

本文讨论了在Java中使用Float和BigDecimal进行数值运算的问题。指出两个BigDecimal对象不能直接运算,并提供了使用BigDecimal的compareTo方法进行比较的方法。同时,文章提到了BigDecimal对象的初始化、加减乘除操作的示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

BigDecimal totalBalance = new BigDecimal(0);
totalBalance = totalBalance.add(new BigDecimal(_stock.getIsQty()));

如果使用float直接運算

float  a += _stock.getIsQty()

結果錯誤

<result column="id_uprice" property="idUprice" javaType="Float"/>

private float idUprice;

<result column="id_uprice" property="idUprice" javaType="java.math.BigDecimal"/>

private BigDecimal idUprice;

兩個BigDecimal不可以直接運算

_detail.getIdQty()*_detail.getIdUprice() 

在 Java 中,您可以使用 BigDecimal 类的 compareTo 方法来判断一个 BigDecimal 值是否等于 0。如果该值等于 0,则该方法返回 0;如果该值大于 0,则该方法返回 1;如果该值小于 0,则该方法返回 -1。

if(_detail.getIdQty() != null && 
_detail.getIdQty().compareTo(BigDecimal.ZERO)!=0) {
map.put
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值