我无法找出这段代码有什么问题... 我正在尝试计算一个百分比: 我确定npage和numpages都大于零(在模拟器的调试变量检查器中已经检查过了),但是最终的cCom总是为0: Double cCom=(double)(npage/numpages); tpercent.setText("("+cCom.toString()+"%)"); 有什么想法吗?
如果npage和numpages都是整数,则Java会将(npage/numpages)四舍五入为一个整数(即0)。要让Java使用双精度除法,您需要将其中一个数字转换为double,如下所示:Double cCom = ((double)npage/numpages); 实际上,因为你正在使用百分比,所以你可能想要:Double cCom = ((double)npage/numpages) * 100;