2+0.2+0.35 ,结果是多少。。。

东临 发布于 2013/09/09 15:51
阅读 428
收藏 0

public class Test{
	public static void main(String[] args){
		System.out.println(2+0.2+0.35);
	}
}

以上代码的输出是什么?我得到的是2.5500000000000003。

对次我不明觉厉,各位有何见解?

加载中
0
LeeRoBeRt
LeeRoBeRt
 float就是这样 要精确请用big number
0
王瑞平
王瑞平
双精度型运算本身就这样
0
东临
东临

引用来自“LeeRoBeRt”的答案

 float就是这样 要精确请用big number
火星了,以前还真没注意过。把顺序换成0.35+0.2+2就得到期望输出,还是多少有点诧异
0
中山野鬼
中山野鬼
哈,都是基础知识。。。
0
东临
东临

引用来自“中山野鬼”的答案

哈,都是基础知识。。。
果然基础比较稀烂,不忍直视。不过这计算结果不给力啊。。
0
RickHuang
RickHuang
发现问题了就赶紧补下浮点数运算的知识吧。如果浮点数和准确计算不掌握好,以后写程序会出现很多BUG的。
0
中山野鬼
中山野鬼

引用来自“东临碣石”的答案

引用来自“中山野鬼”的答案

哈,都是基础知识。。。
果然基础比较稀烂,不忍直视。不过这计算结果不给力啊。。
送你个个人经验,哈。java我就不水了,单就c语言,我除了做统计基本不用浮点。
0
开源中国董事会主席
开源中国董事会主席
计算机的 好多运算违背了 数学计算,搞得很头疼
0
东临
东临

引用来自“中山野鬼”的答案

引用来自“东临碣石”的答案

引用来自“中山野鬼”的答案

哈,都是基础知识。。。
果然基础比较稀烂,不忍直视。不过这计算结果不给力啊。。
送你个个人经验,哈。java我就不水了,单就c语言,我除了做统计基本不用浮点。
好。。经验收好,Level Up
0
吴小编
吴小编

可见基础很重要,国外面试就经常出这类问题

返回顶部
顶部