Comment ajouter des données aux structures de type Liste< ? extends Number>
Tout en travaillant avec une liste définie comme List étend Nombre> foo3 = new ArrayListThe method add(capture#1-of ? extends Number) in the type List
Cette erreur provient de la déclaration générique de List étend Nombre> foo3. Cela indique que foo3 peut contenir des valeurs d'une gamme de types qui héritent de Number. Cela inclut Nombre, Entier et Double. Compte tenu de cette flexibilité, il devient difficile de déterminer quel type d'objet peut être ajouté en toute sécurité à foo3.
Par exemple :
En fin de compte, vous ne pouvez rien ajouter à List étend T> ; car il n'y a aucun moyen de garantir le type de la liste sous-jacente. La seule certitude est que vous pouvez le lire et obtenir une valeur de type T ou une sous-classe de T.
En revanche, la logique inverse s'applique à ? super. Par exemple, Liste super Numéro> foo3 = new ArrayList
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!