Java:在集合的遍历中,关于 Object[] toArray() 方法的疑问
高洛峰
高洛峰 2017-04-18 10:49:20
0
3
697

Java:在集合的遍历中,方法之一为 可以调用Collection接口中的 Object[] toArray()方法 将集合转为数组。这里为什么用 Object[]类型来当返回值,感觉有点怪

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

répondre à tous(3)
巴扎黑

1.Object est la classe parent de tous les objets.
2. Lorsque la classe conteneur ne sait pas dans quel type elle va insérer, la conception de l'implémentation ne peut utiliser qu'un tableau Object pour stocker les éléments.
3. Les génériques sont effacés après compilation. En d’autres termes, pour la JVM, ce qu’elle voit, c’est un objet.
Ainsi, seul le tableau Object peut être renvoyé. Quant à l'ajout de génériques, le compilateur vous aidera avec les transtypages et la détection des éléments.

PHPzhong

Ouais, bizarre.

Il est donc recommandé d'utiliser Collection.toArray(T[] a) pour renvoyer des génériques afin d'éviter le problème de conversion forcée d'Object[].

Ty80

Parce que le type spécifique d'éléments de la collection n'est pas connu. Et Object est la classe parent de toutes les classes. C'est plus raisonnable.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal