- 浏览: 797375 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (981)
- javascript (102)
- java (212)
- JQuery (81)
- 幽默笑话 (2)
- 只言片语 (6)
- 开发小记 (283)
- Hibernate (17)
- DWR (4)
- SQL (10)
- spring-ibatis (8)
- linux (24)
- Struts1 (8)
- Struts2 (16)
- spring (42)
- Mybatis (16)
- css (18)
- servlet (8)
- jdbc (4)
- jsp (1)
- spring-jdbc (2)
- FreeMarker (2)
- MySQL (24)
- JQuery-Grid (7)
- jstl (5)
- 正则表达式 (1)
- 面试集锦 (86)
- unix (18)
- 开发工具 (23)
- ajax (5)
- webservice (4)
- log4j (3)
- oracle (15)
- extjs (14)
- 其他 (9)
- 优秀技术参考地址 (1)
- 性能 (3)
- 数据库 (25)
- 算法 (15)
- 设计模式 (10)
- Python (3)
- AIX (5)
- weblogic (1)
- shell (14)
- quartz (5)
- 图形文件FusionCharts (1)
- Websphere (4)
- 转载 (5)
- hadoop (1)
- highchart (24)
- perl (22)
- DB2 (7)
- JBoss (1)
- JQuery Easy UI (9)
- SpringMVC (5)
- ant (5)
- echart (9)
- log4J配置 (3)
- 多线程 (10)
- 系统架构 (7)
- nginx (3)
- loadrunner1 (1)
- 分布式 (1)
- Dubbo (1)
- Redis (2)
- JMS (4)
- 自动化测试 (3)
- Spring循环依赖的三种方式 (1)
- spring-boot (2)
- 高级测试 (9)
- github (2)
- sonar (1)
- docker (6)
- web前端性能优化 (1)
- spring-aop (6)
- rabbit (1)
- ELK (1)
- maven (1)
- minio (1)
最新评论
-
zengshaotao:
jstl1point0 写道很好啊,如果有带Session会话 ...
Nginx+Tomcat搭建高性能负载均衡集群 -
jstl1point0:
很好啊,如果有带Session会话的怎么搞呢
Nginx+Tomcat搭建高性能负载均衡集群
涉及到金额的计算时,相信很多人都会遇到比较头疼的精度问题。因为计算机的数字表示只是差强人意,比如67.89,计算机可能认为是67.900000000001,这就给最终的运算带来误差。
碰到这样的问题,有2种方法,一是使用更大精度的差值来屏蔽,二则是通过Bigdecimal这个对象来计算。
对于第一种,只能在某些判断条件下使用,如:
Math.abs(data1-data2)>0.001 即可。data1和data2是double类型的
对于第二种,则是比较保险,稳健的处理方式,如:
Bigdecimal d1 = new Bigdecimal(33.56);
Bigdecimal d2 = new Bigdecimal(45.6);
//参数分别是:除数,精度,结果进位方式(这里是四舍五入)
double resule = d1.divide(d2,4,Bigdecimal.ROUND_HALF_UP).doubleValue();//结果是1.3588
当然我们可以无精度损失地简单地设置某一个数值:
Bigdecimal tt = new Bigdecimal(43.344949944);
tt = tt.setSacle(2,Bigdecimal.ROUND_HALF_UP);
double d = tt.doubleValue();
tt = null;//释放对象
补充:对于加减法,也会出现很长一串的字符精度问题,需要对最终的运行结果设置精度,再进行doubleValue的转换
发表评论
-
选股神器
2022-08-20 15:07 241最近闲来无事,突发奇想,将自己的选股思路自动化,计算机化。。 ... -
rpm安装jdk,设置环境变量
2019-05-12 22:49 6461、将jdk的rpm包拷贝到 ... -
java安全编码
2019-01-18 22:31 491软件安全问题,一般 ... -
生产者消费者
2018-07-01 21:33 436package function.thread; i ... -
打印mybatis的执行语句到控制台和文件
2017-12-13 15:11 825log4j.rootLogger=INFO,CONSOLE, ... -
java中类的加载顺序介绍(ClassLoader)
2017-11-14 11:41 8301、ClassNotFoundExcetpion 我们在 ... -
守护线程
2017-11-13 16:40 443对于线程,有个守护的线程的概念。如何理解呢?比如A线程里,n ... -
类加载机制及反射
2017-09-24 08:45 597一、Java类加载机制 ... -
java+selenium2 自动化测试框架
2017-09-15 09:36 1030package web.selenium2; ... -
JMS实例
2017-08-21 15:40 4931. JMS架构 Java 消息服务(Java M ... -
linux设置java环境
2017-08-07 16:47 462linux配置java环境变量(详细) 一. 解压安装jdk ... -
分布式
2017-07-19 12:12 463转载请注明出处:http://blog.csdn.net/l ... -
tomcat+nginx+redis
2017-07-18 16:46 508应用系统的基本架构: -
java调用远程机器的shell脚本
2017-07-14 12:19 1604此程序的目的是执行远程机器上的Shell脚本。 【环境参数 ... -
生产者消费者进阶(带有condition)
2017-05-09 17:56 600package function.thread; ... -
多线程之 CountDownLatch
2017-05-01 13:01 533package function.thread; ... -
判断服务器类型
2017-04-12 10:52 500开发时一般用tomcat,然后在测试环境发布时使用的是web ... -
IE的不同文本浏览模式页面显示
2017-04-11 14:34 552现象描述:最近在遇到的问题就是在在Chrome,火狐页面都正 ... -
java中Filter、Servlet、Listener的学习
2017-03-29 21:52 4681、Filter的功能filter功能,它使用户可以改变一个 ... -
高并发,线程池
2017-03-29 21:52 11141.高并发的内容 Zookee ...
相关推荐
java.lang.management 提供管理接口,用于监视和管理 Java 虚拟机以及 Java 虚拟机在其上运行的操作系统。 java.lang.ref 提供了引用对象类,支持在某种程度上与垃圾回收器之间的交互。 java.lang.reflect 提供类...
Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。编辑音乐软件的朋友,这款实例会对你有所帮助。 Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行ATM...
这是一本以面试题为入口讲解 Java 核心内容的技术书籍,书中内容极力的向你证实代码是对数学逻辑的具体实现。当你仔细阅读书籍时,会发现Java中有大量的数学知识,包括:扰动函数、负载因子、拉链寻址、开放寻址、...
Java OCR(Optical Character Recognition,光学字符识别)技术是一种计算机视觉领域的应用,它能将图像中的文字转换成可编辑的文本格式。这项技术在各种场景下都有广泛应用,比如文档扫描、车牌识别、发票处理等。...
Java API文档是Java开发者的重要参考资料,它包含了Java开发工具包(JDK)中的所有类、接口、方法和常量的详细说明。这份中文网页版的Java API文档为中国的开发者提供了便利,无需通过英文版本来学习和查找API信息,...
java_011 java 人脸识别完整源代码java_011 java 人脸识别完整源代码java_011 java 人脸识别完整源代码java_011 java 人脸识别完整源代码java_011 java 人脸识别完整源代码java_011 java 人脸识别完整源代码java_011...
java电商源代码java电商源代码java电商源代码java电商源代码java电商源代码java电商源代码java电商源代码java电商源代码java电商源代码java电商源代码java电商源代码java电商源代码java电商源代码java电商源代码java...
JAVA开发人员最新版本7.0 api文档!本文档是 Java Platform Standard Edition 7 的 API !Java 1.7 API的中文帮助文档。 深圳电信培训中心 徐海蛟博士教学用api 7.0中文文档。支持全文检索,在线即时查询。 里面列...
java单机小游戏java单机小游戏java单机小游戏java单机小游戏 java单机小游戏java单机小游戏java单机小游戏java单机小游戏 java单机小游戏java单机小游戏java单机小游戏java单机小游戏 java单机小游戏java单机小游戏...
java景点导航系统java景点导航系统java景点导航系统java景点导航系统java景点导航系统java景点导航系统java景点导航系统java景点导航系统java景点导航系统java景点导航系统java景点导航系统java景点导航系统java景点...
java简易小游戏java简易小游戏java简易小游戏java简易小游戏 java简易小游戏java简易小游戏java简易小游戏java简易小游戏 java简易小游戏java简易小游戏java简易小游戏java简易小游戏 java简易小游戏java简易小游戏...
JoSQL(SQLforJavaObjects)为Java开发者提供运用SQL语句来操作Java对象集的能力.利用JoSQL可以像操作数据库中的数据一样对任何Java对象集进行查询,排序,分组。 搜索自动提示 Autotips AutoTips是为解决应用系统对于...
JoSQL(SQLforJavaObjects)为Java开发者提供运用SQL语句来操作Java对象集的能力.利用JoSQL可以像操作数据库中的数据一样对任何Java对象集进行查询,排序,分组。 搜索自动提示 Autotips AutoTips是为解决应用系统对于...
JavaCV(Java Computer Vision)是一个基于Java的计算机视觉库,它为Java和Android开发者提供了方便的接口来使用多个流行的计算机视觉框架,如OpenCV、FFmpeg等。在本项目中,我们将探讨如何配置JavaCV以及如何使用...
JoSQL(SQLforJavaObjects)为Java开发者提供运用SQL语句来操作Java对象集的能力.利用JoSQL可以像操作数据库中的数据一样对任何Java对象集进行查询,排序,分组。 搜索自动提示 Autotips AutoTips是为解决应用系统对于...
Java2Pas是一个实用工具,主要用于将Java编程语言编写的源代码转换为Pascal语言的等效代码。这个工具对于那些需要在两种语言之间迁移代码或者理解不同编程语言语法的开发者来说非常有价值。Java和Pascal虽然都是面向...
HelloWorldApp.java 第一个用Java开发的应用程序。 firstApplet.java 第一个用Java开发的Applet小程序。 firstApplet.htm 用来装载Applet的网页文件 第2章 示例描述:本章介绍开发Java的基础语法知识。 ...
### Java 错误处理:java.lang.OutOfMemoryError: Java heap space 在Java应用程序开发过程中,经常遇到的一个问题就是内存溢出错误,特别是在处理大量数据或长时间运行的应用时。其中,“java.lang....
Java文件管理系统源码 Java文件管理系统源码 Java文件管理系统源码 Java文件管理系统源码 Java文件管理系统源码 Java文件管理系统源码 Java文件管理系统源码 Java文件管理系统源码 Java文件管理系统源码 ...
Java是一种广泛使用的面向对象的编程语言,其设计目标是具有高度的可移植性,灵活性和安全性。本学习笔记主要涵盖了Java的基础知识,包括面向对象、集合、IO流、多线程、反射与动态代理以及Java 8的新特性等方面,...