易截截图软件、单文件、免安装、纯绿色、仅160KB

【转】Java double 相加的怪事情

(本文转载自:http://hi.baidu.com/edilyxin/blog/item/27dc152aba3e10315343c19c.html)
问题的提出:  
编译运行下面这个程序会看到什么?  
public   class   Test{  
          public   static   void   main(String   args[]){  
                  System.out.println(0.05+0.01);  
                  System.out.println(1.0-0.42);  
                  System.out.println(4.015*100);  
                  System.out.println(123.3/100);  
          }  
};  
   
你没有看错!结果确实是  
0.060000000000000005  
0.5800000000000001  
401.49999999999994  
1.2329999999999999  
   
Java中的简单浮点数类型float和double不能够进行运算。不光是Java,在其它很多编程语言中也有这样的问题。在大多数情况下,计算的结果是准确的,但是多试几次(可以做一个循环)就可以试出类似上面的错误。现在终于理解为什么要有BCD码了。  
这个问题相当严重,如果你有9.999999999999元,你的计算机是不会认为你可以购买10元的商品的。  
在有的编程语言中提供了专门的货币类型来处理这种情况,但是Java没有。现在让我们看看如何解决这个问题。  
   
     
   
四舍五入  
我们的第一个反应是做四舍五入。Math类中的round方法不能设置保留几位小数,我们只能象这样(保留两位):  
public   double   round(double   value){&


相关文档:

java正则表达式

   在使用RegularExpressionValidator验证控件时的验证功能及其验证表达式介绍如下:
只能输入数字:“^[0-9]*$”
只能输入n位的数字:“^d{n}$”
只能输入至少n位数字:“^d{n,}$”
只能输入m-n位的数字:“^d{m,n}$”
只能输入零和非零开头的数字:“^(0|[1- ......

四个有用的Java过滤器

一、使浏览器不缓存页面的过滤器     
import javax.servlet.*;    
import javax.servlet.http.HttpServletResponse;    
import java.io.IOException;    
   
/**   
* 用于的使 Browser 不 ......

俺经历的Java面试题目

题目都很简单,但有时候让你用笔完整的写出来却不那么容易了.
1.遍历文件夹(被这个题目考了两次)
import java.io.File;
public class ListFile {
public static void main(String[] args) {
// TODO Auto-generated method stub
String path = "C:/Inetpub";
File f = new File(path);
list(f);
}
publ ......

自动生成Java实体类

JDBC读取数据库元数据,生成JAVA实体类
package com.nffish.util;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import com.nffish.c ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号