long は 64 ビットの符号付き 2 の補数整数です。Long は 128 ビットの符号付き 2 の補数整数ですか? 続行する前にこれを確認したかっただけです。
Long l = 6;
int i = 4;
Integer ii = 2;
l += (l/i) * ii;
2 ではなく 3 を返すには、どこで型キャストする必要があるのだろうと思っていました。
私は次のことを試しました:
l += (long) (((double) l/i) * ii);
で型キャストl/i
すると、 ? ではなく がdouble
返されます。1
1.5
Long を型キャストするとしましょう。これは Long の最大数であり、(long) を使用すると、long は 64 ビットの符号付き 2 の補数の整数であるため、どうなるでしょうか。