博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
web接口中BigDecimal值比较不相等
阅读量:5925 次
发布时间:2019-06-19

本文共 955 字,大约阅读时间需要 3 分钟。

hot3.png

BigDecimal oldPrice=new BigDecimal(50);        BigDecimal newPrice=new BigDecimal(50.00);        out.println("直接比较"+oldPrice.equals(newPrice));        out.println("直接比较"+newPrice.equals(oldPrice));        out.println("比较float值:"+(oldPrice.floatValue()==newPrice.floatValue()));        out.println("比较double值:"+(oldPrice.doubleValue()==newPrice.doubleValue()));        BigDecimal oldPrice1=new BigDecimal("50.1");        BigDecimal newPrice1=new BigDecimal("50.10");        out.println("直接比较"+oldPrice1.equals(newPrice1));        out.println("直接比较"+newPrice1.equals(oldPrice1));        out.println("比较float值:"+(oldPrice1.floatValue()==newPrice1.floatValue()));        out.println("比较double值:"+(oldPrice1.doubleValue()==newPrice1.doubleValue()));

输出结果

直接比较true直接比较true比较float值:true比较double值:true直接比较false直接比较false比较float值:true比较double值:true

当从后台接受BigDecimal是从string字符串转成的,所以会保留小数点.如果原价是3.90,新价是3.9,则认为它两不相等.

转载于:https://my.oschina.net/u/1590027/blog/3028546

你可能感兴趣的文章
PHP访问连接MYSQL数据库
查看>>
Javascript函数调用的四种模式
查看>>
paip.提升用户体验--提升java的热部署热更新能力
查看>>
js跳转页面方法
查看>>
XML--使用XML来将字符串分隔成行数据
查看>>
ESXI转HYPER-V,问题接二连三啊(VMDK转VHD)
查看>>
bcdedit
查看>>
asp.net ajax检查用户名是否存在代码
查看>>
利用jquery给指定的table动态添加一行、删除一行
查看>>
android 开源组件合集-UI篇(2013-11-07更新)
查看>>
[转]Multiple outputs from T4 made easy
查看>>
hdu 4597 + uva 10891(一类区间dp)
查看>>
js获取当前页面url网址等信息
查看>>
软件方面的词汇
查看>>
[禅悟人生]尊严非席, 不可卷起
查看>>
HelloSilverlight
查看>>
在phpmyadmin后台获取webshell方法汇总整理
查看>>
UpdatePanel的用法
查看>>
开源Math.NET基础数学类库使用(04)C#解析Matrix Marke数据格式
查看>>
四种DCOM错误的区别,0x80080005 0x800706be 0x80010105 0x
查看>>