Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
Java での以下のコードの出力は3.0.
3.0
なぜそうではないの3.3333333...ですか?
3.3333333...
double a = 10 / 3; System.out.println(a);
int / intを返すため(int後で何に割り当てたかに関係なく)。
int / int
int
したがって、10 / 3戻ります3(整数除算は切り捨てられます)。
10 / 3
3
これは、その後にのみ変換されdoubleます。
double
これを修正するには、値の 1 つを a にしますdouble(double / intつまり、 a を返すdouble)。
double / int
double a = 10.0 / 3;
また
double a = (double)10 / 3;