Java将整数赋值为浮点

Java将整数赋值为浮点,java,Java,我有整数xy和Z 我用这个公式填充一个float[]]数组 公式是x/(y*(x+z),其中所有3个都是整数 但是当计算的时候,值是0,这绝对不是我检查的xy和z的值 如何防止这种情况发生,并显示浮点值 非常感谢您提前您必须强制转换整数(或仅第一个整数)以使其浮动: float result = ((float)x)/(y*(x+z)); 这将使/操作员从操作中产生一个浮点 别忘了检查你没有被零除。我假设你正在做这样的事情: floats[i][j] = x / (y * (x + z));

我有整数xy和Z

我用这个公式填充一个float[]]数组

公式是x/(y*(x+z),其中所有3个都是整数

但是当计算的时候,值是0,这绝对不是我检查的xy和z的值

如何防止这种情况发生,并显示浮点值


非常感谢您提前

您必须强制转换整数(或仅第一个整数)以使其浮动:

float result = ((float)x)/(y*(x+z));
这将使
/
操作员从操作中产生一个浮点


别忘了检查你没有被零除。

我假设你正在做这样的事情:

floats[i][j] =  x / (y * (x + z));
问题是RHS上的计算是使用整数运算完成的……因为所有的值都是整数。特别是,除法是整数除法,这意味着(例如)如果
0尝试以下方法:

float a = x / (1.F * y * (x + z));

是的,而且还可能出现数字错误,特别是对于
y
的大值。
float a = x / (1.F * y * (x + z));