Je rencontre actuellement des problèmes en essayant de modéliser un arbre de recherche binaire avec des types de données génériques. Je finirai par lire les valeurs de chaîne et les insérer dans l'arbre binaire, d'où la déclaration de chaîne dans la classe Nodez. La classe Nodez est une classe I définie pour déclarer les noeuds à transmettre à l'arbre de recherche. La valeur de chaîne sera un attribut de cette classe. Le BSTree est basé sur une classe définie comme suit:types incompatibles: Le noeud ne peut pas être converti en comparable (lors de son passage en paramètre)
public class BSTree<E extends Comparable<E>> implements BSTreeAPI<E>
Mon problème réside dans le bloc de code principal. L'erreur se produit lorsque j'essaie d'insérer une instance de la classe Nodez. L'erreur exacte ici indique: "types incompatibles: Nodez ne peut pas être converti en comparable"
J'ai passé un bon moment à essayer de déboguer cela, mais je ne suis pas si génial avec les génériques?
Des suggestions s'il vous plaît? Merci!
package twotreesanalyzer;
import java.io.IOException;
import java.io.PrintStream;
import java.util.function.Function;
public class TwoTreesAnalyzer
{
public static class Nodez <E extends Comparable<E>> {
public String x;
public E node;
public String get(){
return x;
}
}
public static void main(String[] args) throws AVLTreeException, BSTreeException, IOException
{
Function<String, PrintStream> printUpperCase = x -> System.out.printf("%S", x);
BSTree bstTest = new BSTree();
Nodez e1 = new Nodez();
e1.x = "fresh";
bstTest.insert(e1);
System.out.println(bstTest.inTree(e1.get()));
}
}
et comment la classe ' Nodez' ressemble? met-il en œuvre des solutions comparables? en passant, ce serait une bonne idée de donner de bons noms à vos cours/méthodes/objets même si c'est juste un projet de jouet! – alfasin
Droite. Nodez est déclaré au dessus de la principale. Quand il implémente comparable, il renvoie une déclaration que nodez n'est pas abstrait et ne remplace pas la méthode abstraite compareTo (E) dans Comparable – boppa