安卓Java百分比计算

9

我无法找出这段代码有什么问题... 我正在尝试计算一个百分比:

我确定npage和numpages都大于零(在模拟器的调试变量检查器中已经检查过了),但是最终的cCom总是为0:

Double cCom=(double)(npage/numpages);

tpercent.setText("("+cCom.toString()+"%)");

有什么想法吗?
1个回答

26

如果npage和numpages都是整数,则Java会将(npage/numpages)四舍五入为一个整数(即0)。要让Java使用双精度除法,您需要将其中一个数字转换为double,如下所示:

Double cCom = ((double)npage/numpages);

实际上,因为你正在使用百分比,所以你可能想要:

Double cCom = ((double)npage/numpages) * 100;

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接