Java部门没有按照我的预期做...

时间:2014-05-26 00:15:43

标签: java division

我搜索了一下,仍然无法找到答案。

我正在计算 distances between tree nodes 的公式,在我的测试用例中,我的公式采用 node i 中的叶数,以及将其除以 node i 中的叶数+ node j 中的叶数。
这些给我1 and 2 respectively,因为 i j 各有一片叶子。

我的问题是当我将1除以2时,我得到零。

所有这些数字都是双打的,所以我不知道问题是什么。 。

这是我的代码:

formula1 = ((newNode.getLeftChild().getNumLeafs()) / (newNode.getLeftChild().getNumLeafs() + newNode.getRightChild().getNumLeafs()));

1 个答案:

答案 0 :(得分:1)

试试这个:

formula1 = ((double)(newNode.getLeftChild().getNumLeafs()) / (double)(newNode.getLeftChild().getNumLeafs() + (double)newNode.getRightChild().getNumLeafs()));

getNumLeafs()可能返回一个int值