前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >每日一题(6)

每日一题(6)

作者头像
KEN DO EVERTHING
发布2019-01-17 15:14:18
3912
发布2019-01-17 15:14:18
举报
文章被收录于专栏:KEN DO EVERTHINGKEN DO EVERTHING

上题回顾与解析

代码语言:javascript
复制
System.out.println(3.0 * 10 == 30.0);
System.out.println(3.14 * 10 == 31.4);
System.out.println(3.1415 * 10 == 31.415);

返回结果是啥?

代码语言:javascript
复制
答案:
true
false
false

解析: 看看这段代码

代码语言:javascript
复制
System.out.println(3.0 * 10);
System.out.println(3.14 * 10);
System.out.println(3.1415 * 10);
//输出
30.0
31.400000000000002
31.415000000000003

结果就很显然了。 计算机用二进制来表示小数的,对于某些小数,二进制无法精确表示,因为二进制只能表示2的n次方的数(就比如十进制中的1/3一样)。浮点数的计算不精确,所以如果用于商业计算,一般使用BigDecimal进行运算

每日一题

代码语言:javascript
复制
public static void main(String[] args) {
         int j = 0 ;
         for (int i = 0; i < 100 ; i++) {
             j = j++;
         }
         System.out.println(j);
     }

输出什么 【阅读原文】查看每日一题系列文章~

end~thanks!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-08-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 java从心 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档