Javaは、自動的にデータ型を変換(暗黙の型変換)することがある。暗黙の型変換は、ルールに基づき行われる。
これに対し、データ型を指定して型変換することもできる。これを、明示的型変換、または、キャストという。
暗黙の型変換
暗黙の型変換とは、自動的に行うデータ型変換のこと。下記のルールに基づき行われる。
- 代入時のプリミティブ型変換
- 変数の型と代入する値の型が異なる場合、代入する値の型を、変数の型に変換する。
- ただし、大きい型から小さい型へは変換しない。
- 算術演算時のプリミティブ型変換
- 各オペランドの型が異なる場合、一番大きいサイズの型に変換する。
- byte < short < int < long < float < double
- ただし、int型より小さい型は、すべてint型に変換する。
- 文字列連結時の型変換
- 結合演算子「+」で文字列と文字列以外を連結する場合、文字列以外の型を、文字列の型に変換する。
明示的型変換(キャスト)
明示的型変換(キャスト)とは、データ型を指定して型変換すること。
詳しくは、明示的型変換(キャスト)のページにて。