Java 内でプリミティブ配列を保持するジェネリックを使用してコレクションを実装すると、配列内に実際に格納されるものは何ですか? ジェネリックを使用してコレクションを定義するということは、オブジェクトのみを格納できることを意味し、そうする場合は をArrayList<Integer>
追加できますint
が、これは に自動ボックス化されInteger
ます。
ArrayList<int[]>
配列はオブジェクトであるため、完全に合法であると定義するとします。私が実際にコレクションに格納されているのはInteger[]
、コンパイラがいくつかの変換を実行し、オートボクシングを使用して配列に追加するためなのか、それとも格納できint[]
、コレクションがプリミティブ配列を配列自体と同じように格納するのかはわかりませんオブジェクト。