J'ai du mal à trouver cela partout si c'est un problème courant, mais je fais face à ce qui est essentiellement un problème de type cascade. Je veux faire quelque chose comme ça, mais je ne peux pas instancier le tableau générique de cette façon. Où le getNodes() retourne le contenu des nœuds, pas les nœuds eux-mêmes, mais je ne peux pas comprendre comment.Déclarations de type générique en cascade en Java
Je pensais que le générique de Node étant défini par le générique Graph signifierait que la classe Node a toujours le même type que la classe Graph. N'est-ce pas le cas?
La classe Node ressemble
public class Node<E> {
private LinkedList<Edge> edges;
private E obj;
public E getObject() {
return obj;
}
// other useful stuff
}
Merci pour toute aide!
EDIT: tout ce qui est nécessaire maintenant est de rendre le tableau retourné du bon type. Existe-t-il un moyen d'obtenir un tableau à partir d'un ArrayList qui a une affectation de type générique?
Si c'était possible, ne pensez-vous pas que 'ArrayList' l'aurait fait? – shmosel
Ceci est une version générique du problème que j'ai. À l'heure actuelle, il est inutile de créer la classe Custom car elle n'ajoute aucune nouvelle fonctionnalité, mais mon code actuel le fait. Pour autant que je sache, je ne peux pas trouver un moyen de contourner ce type de mise en œuvre. – user3785637
Faites simplement ce que 'ArrayList' fait:' public T [] getThings (T [] a) {retourne things.toArray (a); } ' –
shmosel