ローカル変数の型推論
varによる変数宣言
JDK10より、Local-Variable Type Inference(ローカル変数型推論)が使用できるようになりました。
これにより、ローカル変数の宣言時に特定のデータ型を記述するのではなく,varを利用することができます。
int num = 10; //従来の書き方
var num = 10; //ローカル変数型推論の利用
ローカル変数型推論を利用した場合、変数のデータ型が不明無ように見えますが、初期化時に代入されている
右辺の値(上記の例であれば10)によりnum変数はint型と推論できます。
varが利用できる箇所
varが利用できる箇所は以下のとおりです。
・ローカル変数の初期化時
・拡張for文内のインデックス
・通常for文内で宣言されたローカル変数
varが使用できない箇所
varには使用できない箇所があります。以下の場面で使用できない流れです。
・メソッドの引数
・コンストラクタの引数
以上では、使用ができません。
まとめ
・ローカル変数は変数の型を予測してくれる。
・for文内でローカル変数は使用できない。
・メソッドの引数、コンストラクタの引数では使用できない。