黑马程序员技术交流社区

标题: 浮点型数据相加的奇怪结果 [打印本页]

作者: lvjayj    时间: 2013-8-12 09:42
标题: 浮点型数据相加的奇怪结果
本帖最后由 lvjayj 于 2013-8-12 20:10 编辑

// 方法重载:方法名相同,参数个数不同或参数类型不同。
public class MethodDemo03
{
public static int add(int x, int y)
{
  int sum = x + y;
  return sum;
}
public static int add(int x, int y, int z)
{
  int sum = x + y + z;
  return sum;
}
public static float add(float x, float y)
{
  float sum = x + y;
  return sum;
}
public static void main(String [] args)
{
  System.out.println("两整型数字相加结果为:" + add(2, 3));
  System.out.println("三个整型数字相加结果为:" + add(2, 6, 9));
  System.out.println("两个单精度浮点型数字相加结果为:" + add(1.1f, 2.5f));
  System.out.println("两个单精度浮点型数字相加结果为:" + add(1.1f, 2.6f));    // 结果为:3.6999998
  System.out.println("两个单精度浮点型数字相加结果为:" + add(1.1f, 2.7f));    // 结果为:3.8000002
  System.out.println("两个单精度浮点型数字相加结果为:" + add(1.1f, 2.8f));
}
}
这是为什么呢?


作者: EYE_SEE_YOU    时间: 2013-8-12 12:38
http://bbs.itheima.com/forum.php?mod=viewthread&tid=70170




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2