为什么Java中两个整数相除返回0.0?

2022-01-09 00:00:00 floating-point integer-division java
int totalOptCount = 500;
int totalRespCount=1500; 
float percentage =(float)(totalOptCount/totalRespCount);

为什么这总是返回值 0.0?我也想把它格式化成 00.00 格式并转换成字符串?

Why does this always return value 0.0? Also I want to format this into 00.00 format and convert into string?

推荐答案

因为到float的转换发生在除法完成之后.你需要:

Because the conversion to float happens after the division has been done. You need:

float percentage = ((float) totalOptCount) / totalRespCount;

您应该能够使用以下格式进行格式化:

You should be able to format using something like:

String str = String.format("%2.02f", percentage);

相关文章