18/07/17 04:29:24.39 EqDA6MfF0.net
>>103
a[0] = 1;
はコンパイル時に
a[0] = Integer.valueOf(1);
に変換される
Integerクラスはスタティック変数に
-128~127までのIntegerオブジェクトをキャッシュしていて
valueOfメソッドは引数がキャッシュの範囲内であればキャッシュしている
オブジェクトを返す。さもなくばnew Integerしたオブジェクトを返す。
new IntegerはJava 9からDeprecatedになっているから
プログラムから直接呼び出さないことが推奨される。
a[0] = new Integer(1)よりも
a[0] = Integer.valueOf(1)やa[0] = 1が
良いコードと言えるでしょう。