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

鹰潭市网站建设_网站建设公司_MySQL_seo优化

域名有了怎么建设网站,如何给网站写文章,网站建设_超速云建站,默认网站预览能能显示建设中一天一块钱第二天翻倍总览 很久以前#xff0c;我写了一篇关于用双倍赚钱的文章。 但是#xff0c;当解决方案相当简单时#xff0c;仍然是许多开发人员普遍担心的问题。 用双倍赚钱的问题 double有两种类型的错误。 它存在表示错误。 即它不能精确地表示所有可能的十进制… 一天一块钱第二天翻倍 总览 很久以前我写了一篇关于用双倍赚钱的文章。 但是当解决方案相当简单时仍然是许多开发人员普遍担心的问题。 用双倍赚钱的问题 double有两种类型的错误。 它存在表示错误。 即它不能精确地表示所有可能的十进制值。 即使0.1也不完全是这个值。 根据计算也有舍入误差。 即当您执行计算时误差会增加。 double[] ds {0.1,0.2,-0.3,0.1 0.2 - 0.3};for (double d : ds) {System.out.println(d new BigDecimal(d)); } 版画 0.1 0.1000000000000000055511151231257827021181583404541015625 0.2 0.200000000000000011102230246251565404236316680908203125 -0.3 -0.299999999999999988897769753748434595763683319091796875 5.551115123125783E-17 5.5511151231257827021181583404541015625E-17 您可以看到0.1和0.2的表示形式略高于这些值-0.3的表示形式也略高。 当您打印它们时您得到的更好的是0.1而不是代表的实际值0.1000000000000000055511151231257827021181583404541015625 但是将这些值加在一起时会得到一个比0稍高的值。 要记住的重要一点是这些错误不是随机错误。 它们是可管理的且受限制的。 修正舍入误差 像许多数据类型例如日期一样您具有值的内部表示形式以及如何将其表示为字符串。 对于double来说是这样。 您需要控制如何将值表示为字符串。 由于Java对表示错误进行少量舍入并不明显所以这可能会令人惊讶但是一旦对操作也产生舍入错误就会有些震惊。 一个常见的React是假设您对此无能为力该错误是不可控制的不可知的且危险的。 放弃双倍并使用BigDecimal 但是该错误在IEE-754标准中受到限制并且累积缓慢。 舍入结果 就像需要使用TimeZone和Local作为日期一样您需要在转换为String之前确定结果的精度。 要解决此问题您需要提供适当的舍入。 有了钱这很容易因为您知道合适的小数位数除非您有70万亿美元否则舍入误差不会大到无法校正的程度。 // uses round half up, or bankers roundingpublic static double roundToTwoPlaces(double d) {return Math.round(d * 100) / 100.0; }// ORpublic static double roundToTwoPlaces(double d) {return ((long) (d 0 ? d * 100 - 0.5 : d * 100 0.5)) / 100.0; } 如果将其添加到结果中仍然会出现一个很小的表示错误但是它不够大以致Double.toStringd无法对其进行校正。 double[] ds {0.1,0.2,-0.3,0.1 0.2 - 0.3};for (double d : ds) {System.out.println(d to two places roundToTwoPlaces(d) new BigDecimal(roundToTwoPlaces(d))); } 版画 0.1 to two places 0.1 0.1000000000000000055511151231257827021181583404541015625 0.2 to two places 0.2 0.200000000000000011102230246251565404236316680908203125 -0.3 to two places -0.3 -0.299999999999999988897769753748434595763683319091796875 5.551115123125783E-17 to two places 0.0 0 结论 如果您有一个项目标准说应该使用BigDecimal或double则应遵循该标准。 但是没有充分的技术理由担心会花双倍的钱。 参考在Vanilla Java上 与我们的JCG合作伙伴 Peter Lawrey 再次将钱 翻倍 。 相关文章 Java中的低GC使用原语而不是包装器 Java Lambda语法替代 JVM如何处理锁 Erlang与Java内存架构 Java Fork / Join进行并行编程 Java最佳实践系列 如何在Java中获得类似于C的性能 翻译自: https://www.javacodegeeks.com/2011/08/double-your-money-again.html一天一块钱第二天翻倍
http://www.ihoyoo.com/news/37290.html

相关文章:

  • 怎样免费做一个网站大连企业自助建站
  • 菠菜网站建设画册排版设计模板
  • 佛山网站建设公司排名wordpress评论 边栏
  • 徐州手机网站建设天津自动网站建设调试
  • 做网站哪些软件南昌市建网站的公司
  • 莱阳市规划建设局网站杭州建站
  • 安防公司网站模板个人网站建设发布信息
  • 珠海做网站方案专业网页制作
  • 建设网站运营方案朔州网站建设
  • 做微整的网站wordpress建站 网盘视频教程
  • wdcp 配置网站下载了源码怎么做网站
  • 东莞网站建设 拉伸膜快设计网站官网
  • 中小企业网站制作模板自家房子做民宿的网站
  • 怎么做网站备份html5网站建设中
  • 新泰网站建设流程企信宝
  • 安徽龙山建设网站百度网站提交收录入口
  • 求大哥给个狼站2022西安网站托管排名
  • 做花生的网站快速做网站公司哪家好
  • 0元建站平台下载17网一起做网店
  • 安徽商城网站建设福建省百川建设发展有限公司网站
  • 网站建设所需资料及费用成都建设监理协会网站
  • asp.net 网站安装包免费论坛创建
  • 局域网里建设网站用flash制作网站
  • 网站做的好不好wordpress 导入demo
  • 网络促销分类 网站促销用织梦做视频网站
  • 网站整体策划与设计视屏网站制作
  • 做网站设计公司手机网站弹出提示框
  • 制作自己的网站多少钱wordpress手机文章列表
  • 如何注销网站网页制作的公司成都
  • 邵阳汽车网站建设wordpress地址插件