Maison > Questions et réponses > le corps du texte
Java:在集合的遍历中,方法之一为 可以调用Collection接口中的 Object[] toArray()方法 将集合转为数组。这里为什么用 Object[]类型来当返回值,感觉有点怪
巴扎黑2017-04-18 10:51:20
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.
PHPz2017-04-18 10:51:20
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[].
PHP中文网2017-04-18 10:51:20
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.