Java 中的整数除法
Java 中两个整数相除时,结果是浮点数。这是因为除法运算符 (/) 执行整数除法,结果是整数商。要获得浮点结果,一个或两个操作数必须转换为浮点类型,例如 float 或 double。
考虑提供的示例:
int totalOptCount = 500; int totalRespCount=1500; float percentage =(float)(totalOptCount/totalRespCount);
在这种情况下,totalOptCount 和totalRespCount 都是int 类型。表达式totalOptCount/totalRespCount 计算结果为整数0,然后将其转换为浮点数并分配给百分比。因此,百分比的值为 0.0。
要纠正此问题,必须在除法运算之前将其中一个操作数转换为浮点类型:
float percentage = ((float) totalOptCount) / totalRespCount;
通过将totalOptCount 转换为浮点数,除法运算将返回浮点结果,百分比将具有正确的值。
格式化结果
要将结果格式化为所需的 00.00 格式并将其转换为字符串,可以使用 String.format 方法:
String str = String.format("%2.02f", percentage);
格式说明符 %2.02f表示数字在宽度为 2 的字段中应右对齐,并且精度应为小数点后 2 位。结果赋给字符串变量str。
以上是Java中整数除法如何得到准确的浮点结果?的详细内容。更多信息请关注PHP中文网其他相关文章!