A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 波涛   /  2014-5-17 13:29  /  8270 人查看  /  48 人回复  /   2 人收藏 转载请遵从CC协议 禁止商业使用本文

受教了,还没仔细考虑过这个问题
回复 使用道具 举报
zy524488 发表于 2014-5-17 16:43
其实无论是double还是float都会遇到这个问题,就拿float说话,float的0.1二进制形式是001111011 1001100110 ...

        public static void main(String[] args)
        {
                /*double a = 0.01;
                double b = 0.09;
                System.out.println((float)(a+b));*/
               
                float a = 0.01f;
                float b = 0.09f;
                System.out.println((a+b));
        }
输出结果是0.1呀
回复 使用道具 举报
学习了好利好
回复 使用道具 举报
长知识了 .,我都没注意到这个
回复 使用道具 举报
受教,还是不太懂,去百度问问!!
回复 使用道具 举报
陈cc 中级黑马 2015-8-15 20:48:40
46#
好犀利的样子!
回复 使用道具 举报
xlqx15 来自手机 中级黑马 2015-8-17 00:30:35
47#
学习了,又涨姿势了
回复 使用道具 举报
长知识了 .,我都没注意到这个
回复 使用道具 举报
学习中  
回复 使用道具 举报
123
您需要登录后才可以回帖 登录 | 加入黑马