首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >每日一题(6)

每日一题(6)

作者头像
KEN DO EVERTHING
发布于 2019-01-17 15:14:18
发布于 2019-01-17 15:14:18
5572
举报
文章被收录于专栏: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 删除
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档