我无法弄清楚这段代码有什么问题...... 我正在尝试计算一个百分比:
我确定boats npage和numpages大于零(在模拟器的调试变量检查器上检查过),但结果cCom始终为0:
Double cCom=(double)(npage/numpages);
tpercent.setText("("+cCom.toString()+"%)");
有什么想法吗?
答案 0 :(得分:25)
如果npage和numpages都是整数,则Java将(npage / numpages)舍入为整数(即0)。要使Java使用双精度进行除法,您需要将其中一个数字转换为double,如下所示:
Double cCom = ((double)npage/numpages);
事实上,因为你正在使用一个百分比,你可能想要:
Double cCom = ((double)npage/numpages) * 100;