変数に値を代入するときには型を合わせるのが原則です。これが、整数なら int 、小数点を含む計算をするなら double の変数を使う理由です。
int kaisuu = 3; double hankei = 45.0; long ookii = 2147483648L; String youbi = "Sunday";
Stringは基本データ型ではありませんが、型が合わせなければ代入できないところは同じです。
変数の型があわないときでも、int の値を long の変数に代入するとか、float の値を double の変数に代入するなどの、より大きな型に代入する場合は自動的に変数の型にあわせて代入してくれます。
◎,○は代入可。×は不可。
代入する数値の型→ | int | long | float | double | |
---|---|---|---|---|---|
数値の例→ | 12 | 12L | 12F | 12D | |
変数の型 | int | ◎ | × | × | × |
long | ◎ | ◎ | × | × | |
float | ○ | ○ | ◎ | × | |
double | ◎ | ○ | ◎ | ◎ |
○の部分はエラー無く代入されますが、実は場合によっては精度が落ちる(ちょっとだけ不正確になる)こともあります。
次の表を完成させなさい。
No. | 問題 | 変数の型 | リテラルの型 | 型が合っているか | 代入できるか |
例1 | int aa = 1; | int | int | ○ | ○ |
例2 | int ab = 123d; | int | double | × | × |
(1) | int a1 = -1256; | ||||
(2) | int a2 = 2.0; | ||||
(3) | double a3 = 234; | ||||
(4) | double a4 = 3.456; | ||||
(5) | long a5 = 567; | ||||
(6) | long a6 = 78L; | ||||
(7) | String a7 = 123; | ||||
(8) | String a8 = "123"; | ||||
(9) | int a9 = 0xabcd; |
解答は toi02.txt という名前のファイルに、次のように書いて、java のフォルダに保存すること。
(1) double int × × (2) .........