Java:在集合的遍历中,方法之一为 可以调用Collection接口中的 Object[] toArray()方法 将集合转为数组。这里为什么用 Object[]类型来当返回值,感觉有点怪
巴扎黑2017-04-18 10:51:20
1.Object はすべてのオブジェクトの親クラスです。
2. コンテナー クラスにどのような型が格納されるかがわからない場合、実装設計では要素を格納するためにオブジェクト配列のみを使用できます。
3. ジェネリックはコンパイル後に消去されます。言い換えれば、JVM にとって、目に見えるのはオブジェクトです。
したがって、オブジェクト配列のみを返すことができます。ジェネリックスの追加に関しては、コンパイラがキャストと要素の検出を支援します。
PHPz2017-04-18 10:51:20
そう、奇妙だ。
したがって、Object[] の強制変換の問題を避けるために、Collection.toArray(T[] a) を使用してジェネリックを返すことをお勧めします。