Java:在集合的遍历中,方法之一为 可以调用Collection接口中的 Object[] toArray()方法 将集合转为数组。这里为什么用 Object[]类型来当返回值,感觉有点怪
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
1.Object はすべてのオブジェクトの親クラスです。 2. コンテナー クラスにどのような型が格納されるかがわからない場合、実装設計では要素を格納するためにオブジェクト配列のみを使用できます。 3. ジェネリックはコンパイル後に消去されます。言い換えれば、JVM にとって、目に見えるのはオブジェクトです。 したがって、オブジェクト配列のみを返すことができます。ジェネリックスの追加に関しては、コンパイラがキャストと要素の検出を支援します。
そう、奇妙だ。
したがって、Object[] の強制変換の問題を避けるために、Collection.toArray(T[] a) を使用してジェネリックを返すことをお勧めします。
コレクション内の要素の特定の種類がわからないためです。そして、Object はすべてのクラスの親クラスです。これはより合理的です。
1.Object はすべてのオブジェクトの親クラスです。
2. コンテナー クラスにどのような型が格納されるかがわからない場合、実装設計では要素を格納するためにオブジェクト配列のみを使用できます。
3. ジェネリックはコンパイル後に消去されます。言い換えれば、JVM にとって、目に見えるのはオブジェクトです。
したがって、オブジェクト配列のみを返すことができます。ジェネリックスの追加に関しては、コンパイラがキャストと要素の検出を支援します。
そう、奇妙だ。
したがって、Object[] の強制変換の問題を避けるために、Collection.toArray(T[] a) を使用してジェネリックを返すことをお勧めします。
コレクション内の要素の特定の種類がわからないためです。そして、Object はすべてのクラスの親クラスです。これはより合理的です。