整数除法浮动结果

The*_*uru 2 java floating-point division

我必须将两个整数相除并得到一个浮点数作为结果我的代码:

Float ws;
int i = Client.getInstance().getUser().getGespielteSpiele() -Client.getInstance().getUser().getGewonneneSpiele();
int zahl1 = Client.getInstance().getUser().getGewonneneSpiele();

ws = new Float((zahl1 / i));
Run Code Online (Sandbox Code Playgroud)

我用调试器检查值

i = 64

zahl1 = 22

ws = 0.0
Run Code Online (Sandbox Code Playgroud)

为什么结果是ws0.0?我应该怎么做才能获得正确的浮点数?

Mur*_*nik 5

当您除以两个ints时,您将执行整数除法,在这种情况下,这将导致 22/64 = 0。只有完成此操作后,您才能创建一个float. 的float表示00.0。如果要执行浮点除法,则应除法之前进行转换

ws = ((float) zahl1) / i;
Run Code Online (Sandbox Code Playgroud)