0

だから、私はJavaで格闘ゲームをやっていて、常にゼロを返すこの方程式があります。

int x = 90/100*300;

270 のはずですが、0 が返されます。:|

4

6 に答える 6

0

90/100 は 0 余り 90 です。

値を再配置することでこれを修正できます

int x = 90 * 300 / 100; // 270

除算の前に乗算を行い、オーバーフローが発生しない限り、これはより正確になります。

于 2013-10-02T09:05:49.387 に答える
0

この場合のJavaは、乗算/除算を順番に実行します。

また、各数値を整数として解釈します。

したがって、90/100 = 0.9 となり、切り捨てられて 0 になります。

および 0 * 300 = 0 です。

だからあなたは0で終わる

于 2013-10-02T09:05:57.280 に答える
0

私はあなたがこの方程式のようにしたいと思います、これを試してください int x = (90/100)*300;

于 2013-10-02T09:22:55.967 に答える
0

使用するデータ型またはデータinteger型を使用すると、この方程式の適切な答えが得られます。整数データ型は 10 進数値のみの回答を返しますが、float および double データ型は浮動小数点で回答を返すため、この式では float または double データ型を使用する必要があります。floatdouble

于 2013-10-02T09:17:37.093 に答える