スポンサードリンク

【Java】暗黙の型変換とは?明示的な型変換とは?

Javaでは変数を作るときに必ず変数宣言を行い、データ型を決めます。

このようにJavaはデータ型を厳密に区別するわけですが、プログラミング中にはあるデータ型の変数値を、違うデータ型の変数に代入したくなるときが多々あります。

この場合、「型変換」をしなければなりません。

1.型変換

型変換には「暗黙の型変換」と「明示的な型変換」の2つがあります。

暗黙の型変換とは?

byte型の変数「x」とint型の変数「y」を作成したとします。

byte型:1バイトすなわち-128~127の数値を扱える

int型:4バイトすなわち-2147483648~2147483647の数値を扱える

上を見てわかるように、int型はbyte型より大きい数値を扱えます。

そのため、大は小を兼ねるので下のようにint型変数「y」にbyte型変数「x」の値を代入できます。

y = x;

Java 暗黙の型変換と明示的な型変換

さて、小さいサイズのデータ型の変数値を、大きいサイズのデータ型の変数に代入する際、自動的に型の変換がおき、データの代入が可能になります。

この自動的に行われる型変換を「暗黙の型変換」といいます。

明示的な型変換とは?

一方、大きいサイズのデータ型の変数値を、小さいサイズのデータ型の変数に代入することはできません(コンパイルエラーとなります)。

なぜなら、小さい箱に大きい箱をねじ込むことはできないからです。

しかし、明示的な型変換を行うと、代入が可能になります。

明示的な型変換・・・とても煩わしそうですが、やることは下のように型変換したい変数の前に括弧をつけ、その中に代入先のデータ型を記述するだけです。

x = (byte)y;

このようにすれば代入が可能になります。

なお、型変換したい変数の前に括弧をつけ、その中に代入先のデータ型を記述して型変換する方法を明示的な型変換といいます。

コメント

まだコメントはありません。

コメントフォーム
お名前
コメント