当前位置: 首页 > news >正文

360免费建站李梦长沙seo公司网站优化

360免费建站李梦,长沙seo公司网站优化,邢台网站建设服务,简单网站建设协议书1.BigDecimal简介BigDecimal 由任意精度的整数非标度值 和32 位的整数标度 (scale) 组成。如果为零或正数#xff0c;则标度是小数点后的位数。如果为负数#xff0c;则将该数的非标度值乘以 10 的负scale 次幂。因此#xff0c;BigDecimal表示的数值是(unscaledValue 10-s…1.BigDecimal简介BigDecimal 由任意精度的整数非标度值 和32 位的整数标度 (scale) 组成。如果为零或正数则标度是小数点后的位数。如果为负数则将该数的非标度值乘以 10 的负scale 次幂。因此BigDecimal表示的数值是(unscaledValue × 10-scale)。2.BigDecimal的引入在利用Java编程语言开发银行、金融类等需要对数值进行高精度计算的软件时我们经常使用BigDecimal和BigInteger这两个大数类而不是常见的int、long、float、double类型特别是在处理浮点型数据。我们先看一下使用基础数据类型double进行计算并打印结果的一个代码演示public class MainClass {public static void main(String[] args) {System.out.println(0.020.01);System.out.println(0.050.01);}}结果如下0.030.060000000000000005问题来了为什么会出现第二种结果的数据呢根本原因还是我们的计算机是由二进制的而二进制是没办法来精确表示一个浮点数CPU采用“尾数和指数”的方式(科学计数法)表达浮点数的时候存在一定的误差。所以当对数据精度要求比较高的时候还是需要采用BigDecimal类尽管计算速度上稍微慢了一些。3.BigDecimal的使用创建一个BigDecimal对象有构造函数和公有静态方法(BigDecimal.valueOf)两种方式需要注意两点1、构造函数包含使用基本数据类型和字符串作为参数的两种形式推荐使用后者如new BigDecimal(Double.valueOf(0.09))。大家可以尝试一下System.out.println(new BigDecimal(0.06).toString());语句的输出结果是0.0599999999999999977795539507496869191527366638183593752、Decimal打印日志或向基本数据类型转换时尽量使用它提供的公有方法xxxValue()比如doubleValue()而不是简单粗暴的一个toString()4.BigDecimal舍入模式尽管数据库存储的是一个高精度的浮点数但是通常在应用中展示的时候往往需要限制一下小数点的位数比如两到三位小数即可这时就需要使用到setScale(int newScale, int roundingMode)函数作为BigDecimal的公有静态变量舍入模式(Rounding Mode)的运算规则比较多公有八种这里作个说明官方文档也有介绍。1、ROUND_UP向远离零的方向舍入。舍弃非零部分并将非零舍弃部分相邻的一位数字加一。2、ROUND_DOWN向接近零的方向舍入。舍弃非零部分同时不会非零舍弃部分相邻的一位数字加一采取截取行为。3、ROUND_CEILING向正无穷的方向舍入。如果为正数舍入结果同ROUND_UP一致如果为负数舍入结果同ROUND_DOWN一致。注意此模式不会减少数值大小。4、ROUND_FLOOR向负无穷的方向舍入。如果为正数舍入结果同ROUND_DOWN一致如果为负数舍入结果同ROUND_UP一致。注意此模式不会增加数值大小。5、ROUND_HALF_UP向“最接近”的数字舍入如果与两个相邻数字的距离相等则为向上舍入的舍入模式。如果舍弃部分 0.5则舍入行为与ROUND_UP相同否则舍入行为与ROUND_DOWN相同。这种模式也就是我们常说的我们的“四舍五入”。6、ROUND_HALF_DOWN向“最接近”的数字舍入如果与两个相邻数字的距离相等则为向下舍入的舍入模式。如果舍弃部分 0.5则舍入行为与ROUND_UP相同否则舍入行为与ROUND_DOWN相同。这种模式也就是我们常说的我们的“五舍六入”。7、ROUND_HALF_EVEN向“最接近”的数字舍入如果与两个相邻数字的距离相等则相邻的偶数舍入。如果舍弃部分左边的数字奇数则舍入行为与 ROUND_HALF_UP 相同如果为偶数则舍入行为与 ROUND_HALF_DOWN 相同。注意在重复进行一系列计算时此舍入模式可以将累加错误减到最小。此舍入模式也称为“银行家舍入法”主要在美国使用。四舍六入五分两种情况如果前一位为奇数则入位否则舍去。8、ROUND_UNNECESSARY断言请求的操作具有精确的结果因此不需要舍入。如果对获得精确结果的操作指定此舍入模式则抛出ArithmeticException。下面举个例子说明一下不同舍入模式下的数值计算结果保留一位小数5.总结以上就是Java大数类BigDecimal及八种舍入模式的介绍的全部内容希望本文的内容对大家学习Java能有所帮助。
http://www.zqtcl.cn/news/882876/

相关文章:

  • 代做毕网站淘宝权重查询
  • 有专做高端折扣女装的网站吗大连最好的做网站的公司
  • 网站需求嘉兴seo关键词优化
  • 自己开发微网站上海成品网站
  • 国外对企业网站开发的研究山西住房与城乡建设厅定额网站
  • 国家工信部网站备案postfix wordpress
  • 兴宁电子商务网站建设网站模板在线制作
  • 汕头整站优化营销推广网
  • 云服务器搭建网站教程加盟教育培训机构
  • 建筑网站设置工资单人换了怎么换太原做网站找谁
  • 网站做推广需要什么条件重庆网站推广哪家服务好
  • 怎样做理财网站wordpress做产品页教程视频
  • 官网模板建站塔山双喜北京网站建设兴田德润官网多少
  • 网站优化推广外包深圳专业网站建设定制
  • 网站开发aichengkeji元凤建盏简介
  • 移动端网站怎么制作asp做的网站如何发布
  • 做的网站用户密码在哪里找凡科申请的网站和qq空间一样吗
  • 如何自己做网站发布到服务器上面wordpress没有幻灯片
  • 闽侯县建设局网站企业建设网站例文
  • 家居类企业响应式网站搭建电商系统
  • 临沂哪里做网站比较好中国建设银行企业信息门户网站
  • 低价建网站提高网站订单转化率
  • 家居网站应该怎么做网站seo推广软件
  • 旅游网站建设报告关键词优化排名价格
  • 上海网站开发caiyiduo微信建微网站
  • 做网站和做网店哪个好用cms做单页网站怎么做
  • 阿里云有主体新增网站可以免费制作网页的网站
  • 网站备案幕布拍照是什么莱芜网络推广公司服务
  • 招个网站建设维护国家高新技术企业官网
  • 建设医疗网站做企业官网哪家公司好