2
Le code suivant explique mon problème:Borné wilcard ne fonctionne pas pour la liste insérée dans la carte
interface f1 {}
interface f2 extends f1{}
1. List<? extends f1> l1 = new ArrayList<f2>();
2. Map<String, ? extends f1> m1 = new HashMap<String, f2>();
3. Map<String, List<? extends f1>> m2 = new HashMap<String, List<f2>>();
n ° 1 et 2 travail, mais pas. 3 donne une erreur sur eclipse. Il est dit: Type mismatch: cannot convert from HashMap<String,List<f2>> to Map<String,List<? extends f1>>
Pourriez-vous m'aider s'il vous plaît à comprendre pourquoi.
Merci beaucoup. Cela marche. Pouvez-vous s'il vous plaît expliquer la logique derrière cela? – Kes115
Lorsque vous n'utilisez pas l'opérateur de caractère générique? vous spécifiez exactement un type spécifique, e. g., Chaîne. Vous ne pouvez pas faire quelque chose comme Liste