J'étudie des structures de données en Java et j'ai de la difficulté à utiliser des génériques dans les arbres de recherche binaire.Difficultés avec Iterator et les génériques dans l'implémentation de l'arborescence de recherche binaire
Pour notre affectation, nous devons implémenter un arbre de recherche binaire en utilisant des nœuds qui contiennent un nœud parent, gauche et droit ainsi qu'une valeur de données.
La valeur de données dans notre cas prend la forme d'un objet Pair. Voici ce qu'il ressemble à:
public class Pair<A,B> {
public final A fst;
public final B snd;
public Pair(A x, B y) {
fst = x; snd = y;
}
public String toString() {
return new String("("+fst.toString()+", "+snd.toString()+")");
}
}
Paire est associtated avec deux génériques différents avec la première partie étant la clé et la seconde étant la valeur associée à cette clé. J'ai également besoin d'implémenter Iterator dans ma classe BST. Je suis mise en œuvre du Iterator dans une classe interne qui ressemble à ceci:
public Iterator<Pair<K,T>> iterator() {
return new BSTMapIter<Pair<K,T>>(this.root, this.size, this.order);
}
private class BSTMapIter<Pair<K,T>> implements Iterator<Pair<K,T>> { <=== Compiler error "> expected"
...
... (Implementation here)
...
}
Le problème que je suis en cours d'exécution en est une erreur du compilateur dire « > expected
» qui conduit à d'autres erreurs du compilateur (« <identifier expected>
», etc.). D'après ma compréhension, il étouffe sur <Pair<K,T>>
mais je ne sais pas pourquoi. Je suppose que c'est une erreur que j'ai faite en utilisant des génériques quelque part, mais je ne suis pas tout à fait sûr où regarder. Je m'excuse si ce que j'ai fourni est trop vague mais je n'ai rencontré aucun problème avec Pair dans mon implémentation ailleurs mais ici dans l'implémentation de l'Iterator.
Quelqu'un peut-il me dire ce que je fais mal ici ??? Si d'autres informations sont nécessaires, faites le moi savoir et je ferai de mon mieux pour fournir :)