ウェブサイト上でこれらのルールを見つけることができませんでした(確かに私が間違ったことをしているので)。java数学の結果のタイプ
intをintで除算してdoubleに格納すると、必ず最初に丸められた整数が格納されます。私がそれを動作させるために見つけることができた唯一の方法は、分割を行う前に両方の値をdoubleにキャストすることです。より良い方法が必要です。
また、戻り値の型はどこにありますか?
ウェブサイト上でこれらのルールを見つけることができませんでした(確かに私が間違ったことをしているので)。java数学の結果のタイプ
intをintで除算してdoubleに格納すると、必ず最初に丸められた整数が格納されます。私がそれを動作させるために見つけることができた唯一の方法は、分割を行う前に両方の値をdoubleにキャストすることです。より良い方法が必要です。
また、戻り値の型はどこにありますか?
、操作の2種類がある:
、整数演算が実行されます。
2オペランドのうち、ANYONEが浮動小数点の場合、浮動小数点演算が実行されます。 THUS
:
Int/Int --------> int
Double/Int -----> Double
Double/Double --> Double
実際、いい方法はありません。 intをintで除算するとintになります。つまり、5/2を2で割ったとします.2と3の間に整数がないので、2になります。浮動小数点の結果が必要な場合は、そのうちの1つを浮動小数点型にする必要があります。代わりに
int f=5, t=2;
double result;
result = f/t;
のそれを伝えるために型キャストを使用して
result = f/(double) t ;
を作る「私はくそ浮動小数点除算たい!」。プログラミング言語の
あなただけの簡単な方法は、最初からダブルスを使用することです結果、二重
int a,b;
double d = (double) a/b;
を作るために一つの引数をキャストする必要があります。
double a, b;
double d = a/b;
double
丸め誤差なしにあらゆる可能なint
値を表すことができます。
確かに良い方法があります。そのうちの1つをdouble
にキャストすると、もう1つは自動的に変換されます。他の回答が状態よう
式のタイプは、それが格納される前に、引数によって決定される、int
で割っint
のみ次いでdouble
として格納される、int
を生じます。これはJavaに固有のものではないことに注意してください。整数分割を行うすべての言語で発生します。