编程语言
首页 > 编程语言> > 为什么两个整数的除法在Java中返回0.0?

为什么两个整数的除法在Java中返回0.0?

作者:互联网

参见英文答案 > Int division: Why is the result of 1/3 == 0?                                    15个

int totalOptCount = 500;
int totalRespCount=1500; 
float percentage =(float)(totalOptCount/totalRespCount);

为什么这总是返回值0.0?另外我想将其格式化为00.00格式并转换为字符串?

解决方法:

因为转换为浮动发生在除法完成之后.你需要:

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

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

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

标签:integer-division,java,floating-point
来源: https://codeday.me/bug/20190911/1804259.html