警告の質問なしでtoArray()を行う方法はもう1つありますが、ここに掲載されているほとんどのものとは異なります。List <GenericClass <T>> .toArray()内の警告を取り除く
メソッド実装を書き換えて(メソッドのシグネチャを変更せずに)、警告なしでコンパイルできるようにするにはどうすればよいですか?
明らかに難しいのは、Tのクラス情報が実行時に利用できないということです。しかし、戻り値の型は実行時にも消去された型なので、実行できないという理由はありません。ですから、コンパイル時の型の安全を守るためにはどうすればいいですか?
はあなたがすることはできません
<T> GenericClass<T>[] toGenericArray(List<GenericClass<T>> list) {
return list.toArray(new GenericClass[0]);
}
なぜJavaがstupid = Pであるかの完全な例 – Falmarri
@Falmarri:もっと正確に言えば、Javaの中で愚かなものの例です。それはかなり正しく、いくつかのことが間違っています。私は消去がばかだと同意するが、これを一般化するのは不公平だ。 –