- 浏览: 650747 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (144)
- grails (2)
- jboss (2)
- html5 (2)
- maven (9)
- mysql (9)
- android (13)
- java (39)
- javascript (16)
- flex (3)
- oracle (7)
- ubuntu (5)
- tomcat (1)
- ssh (1)
- iphone (0)
- eclipse (5)
- jquery (4)
- web (7)
- ibatis (7)
- dwr (5)
- hibernate (1)
- ws (0)
- freemarker (4)
- css (2)
- webservice (1)
- html (2)
- jsp (4)
- os (5)
- xp (4)
- cpu (2)
- sql (5)
- db (2)
- 数据库 (5)
- log4j.properties (1)
- date (1)
- map (1)
- log4j (1)
- java spring dwr (1)
- (2)
- xml (4)
- ajax (3)
- servlet (1)
- xmlhttp (1)
- linux (2)
- socket (2)
- java,多线程 (1)
- android,java,os (1)
- Android,java (2)
- spring (1)
- java,dwr (1)
- js (2)
- 回调 (1)
- java,event (1)
- java ,注解, (1)
- avd (1)
- sdk (1)
- maven,java,xml,nexus (1)
- java,maven,nexus (1)
- Maven,Android,i-jetty,java (1)
- web js 参数 (1)
- java mac os (1)
- mac os (2)
- mac (1)
- 环境 (1)
- 搭建 (1)
- adt (1)
- adb (1)
- iOS (1)
最新评论
-
lhs472194266:
可以 X-Forwarded-For 可以轻易的被伪造
Java获取IP地址:request.getRemoteAddr()警惕 -
Nabulio:
图片全部加载不出来
maven 建立本地仓库 -
wahaha603:
...
Properties的相对路径以及文件的读取操作 -
一别梦心:
图片没了,楼主补充一下吧
maven 建立本地仓库 -
a_jie1981:
a_jie1981 写道试试http://www.findma ...
maven 建立本地仓库
例子:
BigDecimal a = new BigDecimal("2.00");
BigDecmial b = new BigDecimal(2);
System.out.println(a.equals(b));
输出结果是:false
原因是:BigDecimal比较时,不仅比较值,而且还比较精度???
解决方法:
BigDecimal a = new BigDecimal("2.00").setScale(2,BigDecimal.ROUND_HALF_DOWN);
BigDecmial b = new BigDecimal(2).setScale(2,BigDecimal.ROUND_HALF_DOWN);
System.out.println(a.equals(b));
结果就是:true
关于BigDecimal.ROUND_HALF_UP与ROUND_HALF_DOWN
ROUND_HALF_UP: 遇到.5的情况时往上近似,例: 1.5 ->;2
ROUND_HALF_DOWN : 遇到.5的情况时往下近似,例: 1.5 ->;1
BigDecimal a = new BigDecimal(1.5);
System.out.println("down="+a.setScale(0,BigDecimal.ROUND_HALF_DOWN)+"\tup="+a.setScale(0,BigDecimal.ROUND_HALF_UP));
结 果:down=1 up=2
看这个例子就明白了!
发表评论
-
android wifi 无线调试
2012-06-17 17:24 4403数据线丢了,不想花钱去买,在网上看了看,android手机 ... -
adb server is out of date. killing...
2012-06-17 17:20 8029在cmd窗口输入adb shell 或 adb connect ... -
JAVA 回调
2012-06-12 11:35 922熟悉MS-Windows和X Windows ... -
Class is not accessible due to restriction on required library
2012-06-03 12:13 992How to solve This error messag ... -
Column 'id' in field list is ambiguous
2012-04-23 18:20 7647Column 'id' in field list is am ... -
java.util.ConcurrentModificationException
2012-04-01 16:24 0工作中碰到个ConcurrentModificationExc ... -
在Spring框架下获取Bean的方式总结
2012-04-01 16:23 0众所周知,Spring框架将D ... -
普通Java类获取Spring的Bean的方法
2012-04-01 16:18 1313在SSH集成的前提下。某 ... -
android 调用系统图片浏览器并返回图片路径
2012-04-01 15:56 2516调用系统图片浏览器的方法如下: Intent intent ... -
网络编程中Nagle算法和Delayed ACK的测试
2012-03-31 16:43 1413Nagle算法 的立意是良 ... -
ibatis的remapResults属性合理运用
2012-03-31 15:51 1476Proper Usage of remapResults=&q ... -
response.setHeader()下载中文文件名的设置
2012-03-31 15:44 104031. HTTP消息头 (1)通用信息头 即能用于请求消息中 ... -
判断当前操作系统是不是window
2012-03-19 09:08 1590/** * 判断当前操作系统是不是window * * ... -
freemarker数字格式化
2012-03-17 16:53 3041freemarker在解析数据格式的时候,自动默认将数字按3为 ... -
数据库时客户端提示 Cannot proceed because system tables used by Event Scheduler
2012-02-29 21:13 9879在打开数据库或者用数据库管理工具(Navicat)时客户端提示 ... -
Socket用法详解
2012-02-22 16:49 1125一、构造Socket Socket的构造方法有以下几种重 ... -
在任意位置获取应用程序Context
2012-02-16 10:53 1023Android程序中访问资源时需要提供Context,一般来说 ... -
JAVA进程CPU占用率分析方法
2012-02-13 17:05 35761: 首先把JDK Linux版本上传到服务器上.2: 使 ... -
MYSQL索引优化和in or替换为union all
2012-02-07 17:08 1263使用UNION ALL代替OR,这不是绝对的。具体什么时候选择 ... -
dwr同步问题
2012-02-06 22:58 863想要异步的时候,想要同步的时候同步,在不同的情况下我们有不同的 ...
相关推荐
BigDecimal还提供了比较操作,如`compareTo()`方法,用于比较两个BigDecimal值的大小。返回值为负数表示第一个小于第二个,零表示相等,正数表示第一个大于第二个。 此外,`scale()`和`precision()`方法分别用于...
BigDecimal的大小比较,1.0与1.00是不相等的,得采用它自带的compareTo方法: java 代码 int i=b1.compareTo(b2) 这一次,返回的i可能为-1、0、1,分别表示小于、等于、大于 构造函数:解决了上面这个问题好像...
2. 当需要比较值的相等时,应使用 `compareTo()` 而不是 `equals()`,除非你确信两个 `BigDecimal` 的精度和标度都相同。 3. 在进行加减乘除操作后,根据需要使用 `setScale()` 方法调整精度,并选择合适的舍入模式...
例如,`new BigDecimal("2.00")`与`new BigDecimal("2.0")`虽值相同,但`equals()`返回`false`,因为`scale`不同。 4. **舍入模式**:在进行除法操作时,需指定合适的舍入模式,以处理无法精确表示的除法结果。 5....
BigDecimal 类在 Java 中被设计用来处理高精度的浮点数运算,主要应用于财务、金融等领域,因为这些场景中对精度要求非常高。BigDecimal 提供了加法(add())、减法(subtract())、乘法(multiply())和除法...
4. **比较**:使用`compareTo()`而不是`equals()`进行比较,因为`equals()`检查数值和标度是否完全相同,而商业计算中通常关心的是数值的大小关系。 5. **精度管理**:根据业务需求设置合适的精度,过高可能导致性能...
- 避免使用`equals()`方法比较`BigDecimal`对象,应该使用`compareTo()`,因为`equals()`是基于内容和类型进行比较的,而`compareTo()`是基于数值进行比较的。 示例代码: ```java import java.math.BigDecimal; ...
当`compareTo()`返回0时,意味着两个BigDecimal相等,即使它们的scale不同。如`decimal1.compareTo(decimal2)`返回0,说明decimal1和decimal2数值上相等。 在实际项目中,如使用MyBatis作为持久层框架,可能会在...
如果符号相同,它会通过`matchScale`方法调整两个BigDecimal的精确度,使得它们具有相同的规模,然后再进行比较。这样可以确保即使精确度不同,也能正确判断数值的大小。例如: ```java System.out.println(bd1....
它不提供与以下操作相同的结果:先使用 Double.toString(double) 方法,然后使用 BigDecimal(String) 构造方法,将 double 转换为 String。 知识点 5:BigDecimal 的应用场景 BigDecimal 主要应用于商业计算、银行...
由于之前已经发生了精度丢失,因此`bd`的值并不是期望的1607.55,而是与原始`double`结果相同,即1607.549999999999954525264911353588104248046875。 3. `System.out.println(bd.setScale(2, bd.ROUND_DOWN)....
不要直接使用`==`来比较两个`BigDecimal`对象,应该使用`compareTo()`方法,因为即使两个`BigDecimal`表示相同的数值,它们也可能不是同一个对象。例如: ```java BigDecimal a = new BigDecimal("1.0"); ...
2. **避免直接比较浮点数**:不要直接比较两个浮点数是否相等,而是应该比较它们之间的差值是否在一个很小的范围内。 3. **使用`Math`类中的方法**:对于简单的数学操作,可以使用`Math`类中的方法,如`Math....
`compareTo()`方法是`BigDecimal`的一个重要成员,用于比较两个`BigDecimal`对象的大小。返回值为整数,表示两者之间的关系:正数表示当前对象大于另一个,负数表示当前对象小于另一个,零表示两者相等。 6. **...
推荐使用`Math.abs(a - b) 的方式来判断两个浮点数是否近似相等,其中`epsilon`是一个极小的正值,表示允许的误差范围。 在实际开发中,如果对精度有较高要求,可以使用Java的`BigDecimal`类。`BigDecimal`提供了一...
2. **基本运算**:`BigDecimal`提供了加法(`add()`), 减法(`subtract()`), 乘法(`multiply()`) 和除法(`divide()`), 以及比较操作(`compareTo()`)等方法。 3. **设置精度**:为了控制计算结果的精度,可以使用`...
默认情况下,该方法通过比较两个对象的引用是否相同来判断是否相等。在很多情况下,开发者会重写此方法来实现基于某些属性的逻辑相等。 2. **`protected void finalize()`**:垃圾回收机制调用的方法,用来清理资源...
同样,若长宽互换,周长不变,因为长方形对边相等。 3. 正方形的周长:正方形的四个边等长,所以周长是边长的四倍。例如,一个边长为8厘米的正方形,周长C = 边长 × 4 = 8厘米 × 4 = 32厘米。 在实际编程中,...
如果要比较两个对象的是否相等的话,可以用Long对象的equals()方法。如果要进行“>”,“<”的比较的话,可以通过Long对象的longValue()方法。 long类型的大小比较 对于long类型的数据,这个数据是一个基本数据类型...
3. **避免直接比较**:当需要判断两个 `double` 值是否相等时,不要直接使用 `==` 操作符。应该定义一个很小的正数作为误差容限,并检查两个数之间的差值是否小于这个容限。 ```java double a = 0.1; double b =...