当前位置: 首页 > 面试题库 >

为什么这个Java部门打印出零?

柳均
2023-03-14
问题内容

我有以下代码行:

System.out.println(5/9);

我希望看到的结果是0.555,但是它将打印出零。有人可以帮我理解为什么会这样吗?我目前正在学习编程,并感谢您的帮助。

谢谢!


问题答案:

发生这种情况是因为您在不知不觉中正在执行Integer Division。为了使计算更快,计算机在不涉及十进制数的情况下使用整数除法,因此会丢失十进制值。

试试看:

System.out.println(5.0 / 9.0);

要么

System.out.println(5.0 / 9);

要么

System.out.println(5 / 9.0);

要么

System.out.println((float) 5 / 9);

要么

System.out.println(5 / (float) 9);


 类似资料:
  • 我想知道当您试图捕获StackOverflowError时会发生什么,并提出了以下方法: 现在我的问题是: 为什么这个方法打印'4'? 我想可能是因为在调用堆栈上需要3个段,但我不知道3这个数字来自哪里。当您查看的源代码(和字节码)时,通常会导致比3个多得多的方法调用(因此调用堆栈中的3个段是不够的)。如果这是因为Hotspot VM应用的优化(方法内联),我想知道在另一个VM上结果是否会有所不同

  • 问题内容: 这是代码: 输出是然后 为什么是第一个输出而不是? 问题答案: 它在第一个示例中进行整数除法,因为这是数字文字的默认类型。尝试将其更改为(或-d后缀表示a ),您应该得到相同的答案。

  • 我已经把一些代码放在一起,对人们的考试成绩进行排序,这样他们就可以看到他们的最高成绩是什么,以及他们什么时候达到的。我创建了以下代码,但它没有显示1、2、3等计数器,我缺少什么? 它打印以下内容,所有内容都显示1,而它应该是1、2、3等。

  • 我在用pycharm。2017.1.2. 我在py3环境中安装了anaconda2。在Pycharm中,我使用的是Python3解释器,代码很简单: 在Pycharm的Python控制台中,它打印内置的。 如果我单击“run”(运行)按钮,它会按预期打印主屏幕。 为什么PyCharm Python控制台打印的是内置的而不是主的?

  • 问题内容: 我是一个经验丰富的php开发人员,刚开始学习Java。我目前正在学习Lynda的一些课程,但我仍处于初期阶段。我正在编写要求用户输入并进行简单计算和操作的示例程序。 昨天我遇到了这种情况: 用我的穴居人的大脑,我会思考,但不是,不是Java。明显地。是的,我知道如果将其中一个操作数更改为双精度,结果也将是双精度。 这实际上吓到我了。我禁不住认为这是很糟糕的。认为整数除法会导致整数是非常

  • 我试图制作一个基本的C程序来读取一个文件,但由于某种原因,当我使用运行它时<代码>/Test1 Test1。txt我得到“错误:'s'可能在未初始化的情况下用于此函数”。